You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: don't filter clauses when converting CNF for LRAT checker (#13944)
This PR changes a `filterMap` to a `map` in `CNF.convertLRAT'` so that
tautological clauses become `none` in the array rather then being
deleted.
Without this, deleting clauses causes the clause indices of the
remaining clauses to change, so an LRAT proof generated on the original
CNF is not valid on the converted CNF. This was not caught before as an
AIG constructed with `mkGateCached` will not produce tautological
clauses in its CNF, but with `mkGate` it is possible - e.g. `mkGate lhs
lhs.invert` produces the tautological clause `[out, !lhs, lhs]`.
0 commit comments