Skip to content

Fix #571: Add QuantifiedBooleanFormulas model#625

Merged
isPANN merged 11 commits intomainfrom
issue-571-qbf
Mar 20, 2026
Merged

Fix #571: Add QuantifiedBooleanFormulas model#625
isPANN merged 11 commits intomainfrom
issue-571-qbf

Conversation

@zazabap
Copy link
Copy Markdown
Collaborator

@zazabap zazabap commented Mar 13, 2026

Summary

Adds the QuantifiedBooleanFormulas (QBF) problem model — the canonical PSPACE-complete problem. Given a fully quantified Boolean formula with alternating universal and existential quantifiers, determine whether it is true.

Fixes #571

@codecov
Copy link
Copy Markdown

codecov bot commented Mar 13, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.53%. Comparing base (50baafb) to head (b42b732).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #625      +/-   ##
==========================================
- Coverage   97.54%   97.53%   -0.01%     
==========================================
  Files         371      373       +2     
  Lines       46958    47182     +224     
==========================================
+ Hits        45803    46020     +217     
- Misses       1155     1162       +7     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Implement the canonical PSPACE-complete problem: given a fully quantified
Boolean formula with alternating universal/existential quantifiers,
determine whether it is true. Includes model, CLI support, paper entry,
and comprehensive tests.

Closes #571

Co-Authored-By: Claude Opus 4.6 <[email protected]>
@GiggleLiu
Copy link
Copy Markdown
Contributor

Autonomous project-pipeline resumed this branch for issue #571, but stopped after a merge-main check reported likely_complex: true.

Conflicts:

  • docs/paper/reductions.typ
  • docs/paper/references.bib
  • problemreductions-cli/src/cli.rs
  • problemreductions-cli/src/commands/create.rs
  • problemreductions-cli/src/dispatch.rs
  • problemreductions-cli/src/problem_name.rs
  • src/lib.rs
  • src/models/formula/mod.rs

The board item was moved to Final review for human triage instead of forcing a large migration in pipeline mode.

isPANN and others added 6 commits March 20, 2026 20:28
Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Add missing display_name, aliases, and dimensions fields to
ProblemSchemaEntry, and add `default sat` prefix to declare_variants!
macro to match the current API after merging main.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Register QBF in the example-db chain so `pred create --example` and
paper exports include a canonical instance.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Replaces hand-written paper example with data loaded from the
canonical example database, consistent with other problem definitions.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
The SequencingToMinimizeWeightedCompletionTime paper section was
accessing x.optimal (non-existent) instead of x.optimal_config and
x.optimal_value. Pre-existing error from main.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
isPANN and others added 3 commits March 21, 2026 01:10
QBF is a PSPACE-complete two-player game problem. Following the
established pattern (GeneralizedHex), dims() returns [] and
evaluate([]) runs the full game-tree search via is_true().

This fixes a semantic inconsistency where evaluate() was only checking
CNF matrix satisfaction without quantifier semantics, making BruteForce
treat QBF as plain SAT.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Resolved merge conflicts (both-sides-added-entries pattern) in
reductions.typ, references.bib, and cli.rs. Removed duplicate
bib entries (johnson1983, kolliopoulos2007, raiha1981) introduced
by the merge.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
@isPANN isPANN merged commit bb726f8 into main Mar 20, 2026
5 checks passed
@GiggleLiu GiggleLiu deleted the issue-571-qbf branch April 12, 2026 00:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Model] QuantifiedBooleanFormulas(qbf)(*)

3 participants