logo

Show the Proof

In [1]:
import proveit
# Automation is not needed when only showing a stored proof:
proveit.defaults.automation = False # This will speed things up.
proveit.defaults.inline_pngs = False # Makes files smaller.
%show_proof
Out[1]:
 step typerequirementsstatement
0instantiation1, 2, 3, 4, 5, 6, 7, 8  ⊢  
  : , : , : , : , : , :
1theorem  ⊢  
 proveit.logic.booleans.conjunction.disassociate
2reference163  ⊢  
3reference23  ⊢  
4reference158  ⊢  
5instantiation123  ⊢  
  : , :
6reference56  ⊢  
7instantiation87, 9, 41, 10  ⊢  
  : , : , : , :
8instantiation11, 12, 13, 14, 51, 15, 16  ⊢  
  : , :
9instantiation120, 17, 56  ⊢  
  : , : , :
10instantiation64, 18  ⊢  
  : , :
11theorem  ⊢  
 proveit.logic.booleans.conjunction.and_if_all
12theorem  ⊢  
 proveit.numbers.numerals.decimals.nat4
13instantiation19  ⊢  
  : , : , : , :
14instantiation125  ⊢  
  :
15modus ponens20, 21  ⊢  
16instantiation125  ⊢  
  :
17instantiation22, 23  ⊢  
  : , : , :
18instantiation24, 25  ⊢  
  : , :
19theorem  ⊢  
 proveit.numbers.numerals.decimals.tuple_len_4_typical_eq
20instantiation26, 137, 138, 27  ⊢  
  : , : , : , :
21generalization28  ⊢  
22theorem  ⊢  
 proveit.core_expr_types.tuples.range_len
23instantiation120, 29, 30  ⊢  
  : , : , :
24theorem  ⊢  
 proveit.core_expr_types.tuples.range_from1_len
25instantiation31, 32, 33  ⊢  
  :
26theorem  ⊢  
 proveit.logic.booleans.conjunction.conjunction_from_quantification
27instantiation70, 34, 141, 129, 71, 35*, 36*  ⊢  
  : , : , :
28instantiation64, 37,  ⊢  
  : , :
29instantiation38, 39  ⊢  
  :
30instantiation87, 40, 41, 42  ⊢  
  : , : , : , :
31theorem  ⊢  
 proveit.numbers.number_sets.integers.nonneg_int_is_natural
32instantiation144, 152, 43  ⊢  
  : , :
33instantiation44, 71  ⊢  
  : , :
34instantiation161, 154, 45  ⊢  
  : , : , :
35instantiation87, 46, 47, 48  ⊢  
  : , : , : , :
36instantiation87, 49, 50, 51  ⊢  
  : , : , : , :
37instantiation93, 52, 53,  ⊢  
  : , : , :
38theorem  ⊢  
 proveit.numbers.negation.nat_closure
39instantiation54, 57, 55  ⊢  
  :
40instantiation98, 112, 133, 99*  ⊢  
  : , :
41instantiation125  ⊢  
  :
42instantiation64, 56  ⊢  
  : , :
43instantiation151, 153  ⊢  
  :
44theorem  ⊢  
 proveit.numbers.addition.subtraction.nonneg_difference
45instantiation161, 159, 57  ⊢  
  : , : , :
46instantiation93, 58, 59  ⊢  
  : , : , :
47instantiation60, 96, 118, 143, 61  ⊢  
  : , : , :
48instantiation125  ⊢  
  :
49instantiation93, 62, 63  ⊢  
  : , : , :
50instantiation125  ⊢  
  :
51instantiation64, 65  ⊢  
  : , :
52instantiation108, 109, 103, 158, 111, 66, 69, 67, 118, 133,  ⊢  
  : , : , : , : , : , :
53instantiation68, 158, 109, 111, 69, 133, 118,  ⊢  
  : , : , : , : , : , : , : , :
54theorem  ⊢  
 proveit.numbers.number_sets.integers.nonpos_int_is_int_nonpos
55instantiation70, 124, 141, 129, 71, 72*, 73*  ⊢  
  : , : , :
56instantiation93, 74, 75  ⊢  
  : , : , :
57instantiation144, 145, 153  ⊢  
  : , :
58instantiation108, 158, 163, 109, 80, 111, 133, 112  ⊢  
  : , : , : , : , : , :
59instantiation93, 76, 77  ⊢  
  : , : , :
60theorem  ⊢  
 proveit.numbers.addition.subtraction.subtract_from_add
61instantiation120, 78, 79  ⊢  
  : , : , :
62instantiation108, 158, 163, 109, 80, 111, 118, 112, 133  ⊢  
  : , : , : , : , : , :
63instantiation113, 118, 133, 114  ⊢  
  : , : , :
64theorem  ⊢  
 proveit.logic.equality.equals_reversal
65instantiation81, 133  ⊢  
  :
66instantiation119  ⊢  
  : , : , :
67instantiation142, 133  ⊢  
  :
68theorem  ⊢  
 proveit.numbers.addition.subtraction.add_cancel_general_rev
69instantiation161, 149, 82,  ⊢  
  : , : , :
70theorem  ⊢  
 proveit.numbers.addition.weak_bound_via_left_term_bound
71instantiation83, 157  ⊢  
  :
72instantiation132, 133, 112  ⊢  
  : , :
73instantiation84, 118, 114  ⊢  
  : , :
74instantiation85, 86  ⊢  
  : , : , :
75instantiation87, 88, 89, 90  ⊢  
  : , : , : , :
76instantiation91, 158, 109, 111, 133, 112  ⊢  
  : , : , : , : , : , : , :
77instantiation105, 109, 163, 158, 111, 92, 133, 112, 131*  ⊢  
  : , : , : , : , : , :
78instantiation93, 94, 95  ⊢  
  : , : , :
79instantiation132, 118, 96  ⊢  
  : , :
80instantiation123  ⊢  
  : , :
81theorem  ⊢  
 proveit.numbers.addition.elim_zero_left
82instantiation161, 154, 97,  ⊢  
  : , : , :
83theorem  ⊢  
 proveit.numbers.number_sets.natural_numbers.natural_pos_lower_bound
84theorem  ⊢  
 proveit.numbers.addition.subtraction.add_cancel_basic
85axiom  ⊢  
 proveit.logic.equality.substitution
86instantiation98, 112, 143, 99*  ⊢  
  : , :
87theorem  ⊢  
 proveit.logic.equality.four_chain_transitivity
88instantiation108, 158, 163, 100, 101, 118, 134, 133  ⊢  
  : , : , : , : , : , :
89instantiation102, 109, 103, 111, 104, 118, 134, 133  ⊢  
  : , : , : , :
90instantiation105, 158, 163, 109, 106, 111, 118, 134, 133, 107*  ⊢  
  : , : , : , : , : , :
91theorem  ⊢  
 proveit.numbers.addition.leftward_commutation
92instantiation123  ⊢  
  : , :
93axiom  ⊢  
 proveit.logic.equality.equals_transitivity
94instantiation108, 158, 163, 109, 110, 111, 118, 112, 143  ⊢  
  : , : , : , : , : , :
95instantiation113, 118, 143, 114  ⊢  
  : , : , :
96instantiation161, 149, 115  ⊢  
  : , : , :
97instantiation161, 159, 116,  ⊢  
  : , : , :
98theorem  ⊢  
 proveit.numbers.negation.distribute_neg_through_binary_sum
99instantiation117, 118  ⊢  
  :
100instantiation123  ⊢  
  : , :
101theorem  ⊢  
 proveit.numbers.number_sets.complex_numbers.zero_is_complex
102theorem  ⊢  
 proveit.numbers.addition.elim_zero_any
103theorem  ⊢  
 proveit.numbers.numerals.decimals.nat3
104instantiation119  ⊢  
  : , : , :
105theorem  ⊢  
 proveit.numbers.addition.association
106instantiation123  ⊢  
  : , :
107instantiation120, 121, 122  ⊢  
  : , : , :
108theorem  ⊢  
 proveit.numbers.addition.disassociation
109axiom  ⊢  
 proveit.numbers.number_sets.natural_numbers.zero_in_nats
110instantiation123  ⊢  
  : , :
111theorem  ⊢  
 proveit.core_expr_types.tuples.tuple_len_0_typical_eq
112instantiation161, 149, 124  ⊢  
  : , : , :
113theorem  ⊢  
 proveit.numbers.addition.subtraction.add_cancel_triple_12
114instantiation125  ⊢  
  :
115instantiation161, 154, 126  ⊢  
  : , : , :
116instantiation161, 127, 128,  ⊢  
  : , : , :
117theorem  ⊢  
 proveit.numbers.negation.double_negation
118instantiation161, 149, 129  ⊢  
  : , : , :
119theorem  ⊢  
 proveit.numbers.numerals.decimals.tuple_len_3_typical_eq
120theorem  ⊢  
 proveit.logic.equality.sub_right_side_into
121instantiation130, 133, 143, 131  ⊢  
  : , : , :
122instantiation132, 133, 134  ⊢  
  : , :
123theorem  ⊢  
 proveit.numbers.numerals.decimals.tuple_len_2_typical_eq
124instantiation161, 154, 135  ⊢  
  : , : , :
125axiom  ⊢  
 proveit.logic.equality.equals_reflexivity
126instantiation161, 159, 137  ⊢  
  : , : , :
127instantiation136, 137, 138  ⊢  
  : , :
128assumption  ⊢  
129instantiation139, 140, 157  ⊢  
  : , : , :
130theorem  ⊢  
 proveit.numbers.addition.subtraction.subtract_from_add_reversed
131theorem  ⊢  
 proveit.numbers.numerals.decimals.add_1_1
132theorem  ⊢  
 proveit.numbers.addition.commutation
133instantiation161, 149, 141  ⊢  
  : , : , :
134instantiation142, 143  ⊢  
  :
135instantiation161, 159, 145  ⊢  
  : , : , :
136theorem  ⊢  
 proveit.numbers.number_sets.integers.int_interval_within_int
137instantiation144, 145, 160  ⊢  
  : , :
138theorem  ⊢  
 proveit.numbers.number_sets.integers.zero_is_int
139theorem  ⊢  
 proveit.logic.sets.inclusion.unfold_subset_eq
140instantiation146, 147  ⊢  
  : , :
141instantiation161, 154, 148  ⊢  
  : , : , :
142theorem  ⊢  
 proveit.numbers.negation.complex_closure
143instantiation161, 149, 150  ⊢  
  : , : , :
144theorem  ⊢  
 proveit.numbers.addition.add_int_closure_bin
145instantiation151, 152  ⊢  
  :
146theorem  ⊢  
 proveit.logic.sets.inclusion.relax_proper_subset
147theorem  ⊢  
 proveit.numbers.number_sets.real_numbers.nat_pos_within_real
148instantiation161, 159, 153  ⊢  
  : , : , :
149theorem  ⊢  
 proveit.numbers.number_sets.complex_numbers.real_within_complex
150instantiation161, 154, 155  ⊢  
  : , : , :
151theorem  ⊢  
 proveit.numbers.negation.int_closure
152instantiation161, 156, 157  ⊢  
  : , : , :
153instantiation161, 162, 158  ⊢  
  : , : , :
154theorem  ⊢  
 proveit.numbers.number_sets.real_numbers.rational_within_real
155instantiation161, 159, 160  ⊢  
  : , : , :
156theorem  ⊢  
 proveit.numbers.number_sets.integers.nat_pos_within_int
157assumption  ⊢  
158theorem  ⊢  
 proveit.numbers.numerals.decimals.nat1
159theorem  ⊢  
 proveit.numbers.number_sets.rational_numbers.int_within_rational
160instantiation161, 162, 163  ⊢  
  : , : , :
161theorem  ⊢  
 proveit.logic.sets.inclusion.superset_membership_from_proper_subset
162theorem  ⊢  
 proveit.numbers.number_sets.integers.nat_within_int
163theorem  ⊢  
 proveit.numbers.numerals.decimals.nat2
*equality replacement requirements