logo
In [1]:
import proveit
theory = proveit.Theory() # the theorem's theory
In [2]:
%proving iff_transitivity
With these allowed/disallowed theorem/theory presumptions (e.g., to avoid circular dependencies), we begin our proof of
iff_transitivity:
(see dependencies)
In [3]:
iff_transitivity.instance_expr.prove(assumptions=iff_transitivity.conditions)
iff_transitivity may now be readily provable (assuming required theorems are usable).  Simply execute "%qed".
In [4]:
%qed # automation can handle this
proveit.logic.booleans.implication.iff_transitivity has been proven.
Out[4]:
 step typerequirementsstatement
0generalization1  ⊢  
1instantiation2, 3, 4,  ⊢  
  : , :
2theorem  ⊢  
 proveit.logic.booleans.implication.iff_intro
3deduction5,  ⊢  
4deduction6,  ⊢  
5modus ponens7, 8, ,  ⊢  
6modus ponens9, 10, ,  ⊢  
7instantiation15, 18  ⊢  
  : , :
8modus ponens11, 12,  ⊢  
9instantiation17, 16  ⊢  
  : , :
10modus ponens13, 14,  ⊢  
11instantiation15, 16  ⊢  
  : , :
12assumption  ⊢  
13instantiation17, 18  ⊢  
  : , :
14assumption  ⊢  
15theorem  ⊢  
 proveit.logic.booleans.implication.iff_implies_right
16assumption  ⊢  
17theorem  ⊢  
 proveit.logic.booleans.implication.iff_implies_left
18assumption  ⊢