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
0generalization1  ⊢  
1instantiation2, 3  ⊢  
  : , : , :
2axiom  ⊢  
 proveit.core_expr_types.conditionals.condition_replacement
3instantiation4, 5, 6  ⊢  
  : , :
4theorem  ⊢  
 proveit.logic.booleans.implication.iff_intro
5deduction7  ⊢  
6deduction8  ⊢  
7instantiation13, 18, 9, 10, 11, 12  ⊢  
  : , :
8instantiation13, 14, 15, 90, 84, 16, 17,  ⊢  
  : , :
9instantiation26  ⊢  
  : , : , :
10instantiation102, 103, 18, 104, 19, 21  ⊢  
  : , : , : , : , :
11instantiation102, 123, 129, 20, 21  ⊢  
  : , : , : , : , :
12instantiation102, 129, 123, 23, 21  ⊢  
  : , : , : , : , :
13theorem  ⊢  
 proveit.logic.booleans.conjunction.and_if_all
14theorem  ⊢  
 proveit.numbers.numerals.decimals.nat4
15instantiation22  ⊢  
  : , : , : , :
16instantiation102, 129, 103, 23, 104, 106  ⊢  
  : , : , : , : , :
17instantiation24, 54, 71, 90, 25,  ⊢  
  : , : , :
18theorem  ⊢  
 proveit.numbers.numerals.decimals.nat3
19instantiation26  ⊢  
  : , : , :
20instantiation115  ⊢  
  : , :
21assumption  ⊢  
22theorem  ⊢  
 proveit.numbers.numerals.decimals.tuple_len_4_typical_eq
23instantiation115  ⊢  
  : , :
24theorem  ⊢  
 proveit.numbers.number_sets.real_numbers.in_IntervalCO
25instantiation27, 28, 29,  ⊢  
  : , :
26theorem  ⊢  
 proveit.numbers.numerals.decimals.tuple_len_3_typical_eq
27theorem  ⊢  
 proveit.logic.booleans.conjunction.and_if_both
28instantiation44, 101, 54, 45, 30, 48, 31*, 49*,  ⊢  
  : , : , :
29instantiation32, 33, 34,  ⊢  
  : , : , :
30instantiation35, 95, 96, 84,  ⊢  
  : , : , :
31instantiation36, 89, 68  ⊢  
  :
32theorem  ⊢  
 proveit.numbers.ordering.transitivity_less_eq_less
33instantiation37, 38, 39,  ⊢  
  : , : , :
34instantiation40, 71, 41, 54, 42, 43*  ⊢  
  : , : , :
35theorem  ⊢  
 proveit.numbers.number_sets.integers.interval_lower_bound
36theorem  ⊢  
 proveit.numbers.division.frac_zero_numer
37theorem  ⊢  
 proveit.logic.equality.sub_right_side_into
38instantiation44, 101, 45, 46, 47, 48, 49*,  ⊢  
  : , : , :
39instantiation50, 89, 59, 68, 51*  ⊢  
  : , : , :
40theorem  ⊢  
 proveit.numbers.addition.strong_bound_via_right_term_bound
41instantiation52, 55  ⊢  
  :
42instantiation53, 54, 55, 56, 57*  ⊢  
  : , :
43instantiation58, 59  ⊢  
  :
44theorem  ⊢  
 proveit.numbers.division.weak_div_from_numer_bound__pos_denom
45instantiation130, 113, 60,  ⊢  
  : , : , :
46instantiation130, 113, 61  ⊢  
  : , : , :
47instantiation62, 95, 96, 84,  ⊢  
  : , : , :
48instantiation63, 118  ⊢  
  :
49instantiation64, 65, 66,  ⊢  
  : , : , :
50theorem  ⊢  
 proveit.numbers.division.distribute_frac_through_subtract
51instantiation67, 89, 68  ⊢  
  :
52theorem  ⊢  
 proveit.numbers.negation.real_closure
53theorem  ⊢  
 proveit.numbers.negation.negated_strong_bound
54theorem  ⊢  
 proveit.numbers.number_sets.real_numbers.zero_is_real
55instantiation130, 113, 69  ⊢  
  : , : , :
56instantiation70, 81  ⊢  
  :
57theorem  ⊢  
 proveit.numbers.negation.negated_zero
58theorem  ⊢  
 proveit.numbers.addition.elim_zero_right
59instantiation130, 100, 71  ⊢  
  : , : , :
60instantiation130, 121, 72,  ⊢  
  : , : , :
61instantiation130, 121, 96  ⊢  
  : , : , :
62theorem  ⊢  
 proveit.numbers.number_sets.integers.interval_upper_bound
63theorem  ⊢  
 proveit.numbers.number_sets.natural_numbers.natural_pos_is_pos
64axiom  ⊢  
 proveit.logic.equality.equals_transitivity
65instantiation73, 74, 75, 78, 76*,  ⊢  
  : , : , :
66instantiation77, 78  ⊢  
  :
67theorem  ⊢  
 proveit.numbers.division.frac_cancel_complete
68instantiation79, 118  ⊢  
  :
69instantiation130, 80, 81  ⊢  
  : , : , :
70theorem  ⊢  
 proveit.numbers.number_sets.rational_numbers.positive_if_in_rational_pos
71instantiation130, 113, 82  ⊢  
  : , : , :
72instantiation130, 83, 84,  ⊢  
  : , : , :
73theorem  ⊢  
 proveit.numbers.division.frac_cancel_left
74instantiation130, 86, 85  ⊢  
  : , : , :
75instantiation130, 86, 87  ⊢  
  : , : , :
76instantiation88, 89  ⊢  
  :
77theorem  ⊢  
 proveit.numbers.division.frac_one_denom
78instantiation130, 100, 90  ⊢  
  : , : , :
79theorem  ⊢  
 proveit.numbers.number_sets.natural_numbers.nonzero_if_is_nat_pos
80theorem  ⊢  
 proveit.numbers.number_sets.rational_numbers.rational_pos_within_rational
81instantiation91, 92, 93  ⊢  
  : , :
82instantiation130, 121, 117  ⊢  
  : , : , :
83instantiation94, 95, 96  ⊢  
  : , :
84instantiation102, 123, 106  ⊢  
  : , : , : , : , :
85instantiation130, 98, 97  ⊢  
  : , : , :
86theorem  ⊢  
 proveit.numbers.number_sets.complex_numbers.real_nonzero_within_complex_nonzero
87instantiation130, 98, 99  ⊢  
  : , : , :
88theorem  ⊢  
 proveit.numbers.multiplication.elim_one_right
89instantiation130, 100, 101  ⊢  
  : , : , :
90instantiation102, 103, 129, 104, 105, 106  ⊢  
  : , : , : , : , :
91theorem  ⊢  
 proveit.numbers.division.div_rational_pos_closure
92instantiation130, 107, 120  ⊢  
  : , : , :
93instantiation130, 107, 118  ⊢  
  : , : , :
94theorem  ⊢  
 proveit.numbers.number_sets.integers.int_interval_within_int
95theorem  ⊢  
 proveit.numbers.number_sets.integers.zero_is_int
96instantiation108, 122, 109  ⊢  
  : , :
97instantiation130, 111, 110  ⊢  
  : , : , :
98theorem  ⊢  
 proveit.numbers.number_sets.real_numbers.rational_nonzero_within_real_nonzero
99instantiation130, 111, 112  ⊢  
  : , : , :
100theorem  ⊢  
 proveit.numbers.number_sets.complex_numbers.real_within_complex
101instantiation130, 113, 114  ⊢  
  : , : , :
102theorem  ⊢  
 proveit.logic.booleans.conjunction.any_from_and
103axiom  ⊢  
 proveit.numbers.number_sets.natural_numbers.zero_in_nats
104theorem  ⊢  
 proveit.core_expr_types.tuples.tuple_len_0_typical_eq
105instantiation115  ⊢  
  : , :
106assumption  ⊢  
107theorem  ⊢  
 proveit.numbers.number_sets.rational_numbers.nat_pos_within_rational_pos
108theorem  ⊢  
 proveit.numbers.addition.add_int_closure_bin
109instantiation116, 117  ⊢  
  :
110instantiation130, 119, 118  ⊢  
  : , : , :
111theorem  ⊢  
 proveit.numbers.number_sets.rational_numbers.nonzero_int_within_rational_nonzero
112instantiation130, 119, 120  ⊢  
  : , : , :
113theorem  ⊢  
 proveit.numbers.number_sets.real_numbers.rational_within_real
114instantiation130, 121, 122  ⊢  
  : , : , :
115theorem  ⊢  
 proveit.numbers.numerals.decimals.tuple_len_2_typical_eq
116theorem  ⊢  
 proveit.numbers.negation.int_closure
117instantiation130, 128, 123  ⊢  
  : , : , :
118instantiation124, 129, 127  ⊢  
  : , :
119theorem  ⊢  
 proveit.numbers.number_sets.integers.nat_pos_within_nonzero_int
120theorem  ⊢  
 proveit.numbers.numerals.decimals.posnat1
121theorem  ⊢  
 proveit.numbers.number_sets.rational_numbers.int_within_rational
122instantiation125, 126, 127  ⊢  
  : , :
123theorem  ⊢  
 proveit.numbers.numerals.decimals.nat1
124theorem  ⊢  
 proveit.numbers.exponentiation.exp_natpos_closure
125theorem  ⊢  
 proveit.numbers.exponentiation.exp_int_closure
126instantiation130, 128, 129  ⊢  
  : , : , :
127instantiation130, 131, 132  ⊢  
  : , : , :
128theorem  ⊢  
 proveit.numbers.number_sets.integers.nat_within_int
129theorem  ⊢  
 proveit.numbers.numerals.decimals.nat2
130theorem  ⊢  
 proveit.logic.sets.inclusion.superset_membership_from_proper_subset
131theorem  ⊢  
 proveit.numbers.number_sets.natural_numbers.nat_pos_within_nat
132assumption  ⊢  
*equality replacement requirements