IMP_ANTISYM_RULE : thm -> thm -> thm
- SYNOPSIS
-
Deduces equality of boolean terms from forward and backward implications.
- DESCRIPTION
-
When applied to the theorems A1 |- t1 ==> t2 and A2 |- t2 ==> t1, the
inference rule IMP_ANTISYM_RULE returns the theorem A1 u A2 |- t1 <=> t2.
A1 |- t1 ==> t2 A2 |- t2 ==> t1
------------------------------------- IMP_ANTISYM_RULE
A1 u A2 |- t1 <=> t2
- FAILURE CONDITIONS
-
Fails unless the theorems supplied are a complementary implicative
pair as indicated above.
- EXAMPLE
-
# let th1 = TAUT `p /\ q ==> q /\ p`
and th2 = TAUT `q /\ p ==> p /\ q`;;
val th1 : thm = |- p /\ q ==> q /\ p
val th2 : thm = |- q /\ p ==> p /\ q
# IMP_ANTISYM_RULE th1 th2;;
val it : thm = |- p /\ q <=> q /\ p
- SEE ALSO
-
EQ_IMP_RULE, EQ_MP, EQ_TAC.