Skip to content

Commit

Permalink
Doc
Browse files Browse the repository at this point in the history
  • Loading branch information
ajreynol committed Nov 18, 2024
1 parent 8065f69 commit e6e25e3
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions src/theory/datatypes/infer_proof_cons.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -319,6 +319,13 @@ void InferProofCons::convert(InferenceId infer, TNode conc, TNode exp, CDProof*
break;
case InferenceId::DATATYPES_CYCLE:
{
// the conflict is of the form
// (and (= x (C1 ... x1 ...))
// (= x1 (C2 ... x2 ...)) ....
// (= x{n-1} (Cn ... xn ...)))
// We take the first n-1 equalities as a substitution and apply it to
// the right hand side of the last equality, and use DT_CYCLE to derive
// a conflict.
Assert(!expv.empty());
Node lastEq = expv[expv.size() - 1];
Assert(lastEq.getKind() == Kind::EQUAL);
Expand Down

0 comments on commit e6e25e3

Please sign in to comment.