Expand description
Certified symmetry breaking — the centerpiece. Given a formula and a set of verified symmetry generators, add lex-leader symmetry-breaking predicates as PR steps (each self-checked, fail-closed), solve the augmented formula, and emit a single composed refutation that an independent checker accepts against the original formula alone.
This closes the soundness gap of the old path (where the symmetry-broken formula was RUP-
certified but the model-removing addition was only argued informally): here every SBP clause
carries a propagation-redundancy witness derived from its symmetry, so the whole UNSAT
result — symmetry steps included — is machine-checkable. The decisive wiring invariant is
that check_pr_refutation runs against formula ALONE; the SBP clauses appear only as PR
steps, never as free original clauses.
Structs§
- Certified
Refutation - The outcome of a certified-symmetry-breaking solve.
Functions§
- certified_
unsat - Solve
formulawith certified symmetry breaking under the givengenerators(each must be a genuine automorphism — they are re-checked implicitly by the per-clause PR self-check). - certified_
unsat_ auto - Solve
formulawith FULL certified symmetry breaking, discovering the symmetries itself. - certified_
unsat_ lex - heule_
clique_ ranked - The steered clique-coloring refutation with its rank function attached — the analogue of
heule_php_rankedover the coloring encoding, so a clique refutation also ships a checkableO(n²)size certificate (rank = active vertices remaining). - heule_
clique_ refutation - Full-chain structural steering of
clique_coloring(n, k)(UNSAT fork < n): the Heule pigeonhole refutation transplanted onto the coloring encoding, wielding the a-priori vertex-swap symmetry rather than detecting it.k + 1mutually-adjacent vertices already form a PHP(k+1, k), so the proof forces thosek+1vertices out of the colors one at a time — each clause¬x(i, color)certified by the substitution “swap vertexiwith the last active vertex”, whose SR check clashes at once on the corresponding at-most-one clause. The whole stream is verified against the original clique formula alone. - heule_
php_ ranked - The Heule PHP(n) refutation with its rank function attached — each symmetry-breaking step
is tagged by the round (
m= active items remaining) it belongs to, a non-increasing measure whose descent bounds the proof size. The closing RUP steps take the bottom rank1. Feed the result tocrate::complexity::RankedRefutation::certifyto get a checkableO(n²)size bound alongside the correctness check. - heule_
php_ refutation - The Heule–Kiesl–Biere short PR refutation of PHP(n): a polynomial-size, fully certified proof — where the lex-leader provably cannot scale on UNSAT instances.
- lex_
leader_ clauses - Build the full lex-leader symmetry-breaking predicate for
sigmaover the moved-variable order, enforcingx ≤ₗₑₓ σ(x). Returns the clauses (over base variables plus fresh auxiliary “tied-so-far” variablese_i, allocated starting ataux_start) and the number of aux variables used. This is the linear-size encoding that prunes the entire non-leader half of every σ-orbit — the real search-collapse predicate. - symmetry_
break_ certified - Solve
formulawith FULL certified lex-leader symmetry breaking. For each generator, add the complete lex-leader chain (enforcingx ≤ₗₑₓ σ(x)) as PR steps — each clause certified by a principled witness — then solve and append the learned clauses as RUP steps. This prunes the non-leader half of every σ-orbit (real search collapse), with the whole refutation checked againstformulaalone. A generator whose chain cannot be fully certified is skipped (fail-closed); the result stays sound. Augmentformulawith the certified full lex-leader symmetry-breaking clauses for each generator, committing a generator’s chain only when every clause of it certifies (else the generator is skipped — fail-closed). Returns the augmented clause set, the extended variable count (base + auxiliaries), and the PR proof steps that justify the added clauses. This is the symmetry-breaking front half shared by certified solving and by search-collapse measurement.