Lemmas validating Decidable.decide simplifications rules on Eq #
Lemmas validating simplification rules decide e1 = e2 | e2 = decide e1 ===> e1 = (true = e2).
Lemmas validating simplification rule c = (a == b) ===> (true = c) = (a = b) (if isCompatibleBeqType Type(a))`.
Lemmas validating simplification rule false = (a == b) ===> ¬ (a = b) (if isCompatibleBeqType Type(a))`.
Lemmas validating simplification rules
- B1 = e1 ∧ B2 = e2 ==> true = (NOP(B1, e1) && NOP(B2, e2)) (if B1 ∨ B2)
- B1 = e1 ∧ B2 = e2 ==> false = (e1 || e2) (if ¬ B1 ∧ ¬ B2)
Lemmas validating simplification rules:
- B1 = e1 ∨ B2 = e2 ==> true = (NOP(B1, e1) || NOP(B2, e2)) (if B1 ∨ B2)
- B1 = e1 ∨ B2 = e2 ==> false = (e1 && e2) (if ¬ B1 ∧ ¬ B2)