Crux.Expression.RewriteRule.TautologyLaw (crux v0.1.3)

Copy Markdown View Source

Rewrite rule that detects common tautology patterns.

Applies the transformations:

  • A OR (NOT A OR B) = true (tautology with additional terms)
  • (NOT A OR B) OR A = true (tautology with additional terms)
  • (A OR B) OR NOT A = true (tautology with additional terms)
  • NOT A OR (A OR B) = true (tautology with additional terms)

These patterns represent tautologies where a complement pair appears in disjunction with additional terms, making the entire expression true.