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  ⊢  
  : , : , :
1axiom  ⊢  
 proveit.logic.equality.substitution
2instantiation7, 3, 4  ⊢  
  : , : , :
3instantiation5, 88, 98, 22, 6, 23, 31, 13  ⊢  
  : , : , : , : , : , :
4instantiation7, 8, 9  ⊢  
  : , : , :
5theorem  ⊢  
 proveit.numbers.addition.disassociation
6instantiation29  ⊢  
  : , :
7axiom  ⊢  
 proveit.logic.equality.equals_transitivity
8instantiation10, 88, 22, 23, 31, 13  ⊢  
  : , : , : , : , : , : , :
9instantiation11, 22, 98, 88, 23, 12, 31, 13, 14*  ⊢  
  : , : , : , : , : , :
10theorem  ⊢  
 proveit.numbers.addition.leftward_commutation
11theorem  ⊢  
 proveit.numbers.addition.association
12instantiation29  ⊢  
  : , :
13instantiation96, 34, 15  ⊢  
  : , : , :
14instantiation16, 17, 18*  ⊢  
  : , :
15instantiation40, 41, 19, 20  ⊢  
  : , :
16theorem  ⊢  
 proveit.logic.equality.equals_reversal
17instantiation21, 22, 98, 88, 23, 24, 25, 31, 26*  ⊢  
  : , : , : , : , : , :
18theorem  ⊢  
 proveit.numbers.numerals.decimals.add_1_1
19instantiation45, 27, 98  ⊢  
  : , :
20instantiation47, 28, 49  ⊢  
  : , :
21theorem  ⊢  
 proveit.numbers.multiplication.distribute_through_sum
22axiom  ⊢  
 proveit.numbers.number_sets.natural_numbers.zero_in_nats
23theorem  ⊢  
 proveit.core_expr_types.tuples.tuple_len_0_typical_eq
24instantiation29  ⊢  
  : , :
25instantiation96, 34, 41  ⊢  
  : , : , :
26instantiation30, 31  ⊢  
  :
27instantiation96, 50, 32  ⊢  
  : , : , :
28instantiation96, 53, 33  ⊢  
  : , : , :
29theorem  ⊢  
 proveit.numbers.numerals.decimals.tuple_len_2_typical_eq
30theorem  ⊢  
 proveit.numbers.multiplication.elim_one_left
31instantiation96, 34, 35  ⊢  
  : , : , :
32instantiation96, 55, 73  ⊢  
  : , : , :
33instantiation96, 57, 70  ⊢  
  : , : , :
34theorem  ⊢  
 proveit.numbers.number_sets.complex_numbers.real_within_complex
35modus ponens36, 37  ⊢  
36instantiation38  ⊢  
  : , : , :
37generalization39  ⊢  
38theorem  ⊢  
 proveit.numbers.summation.summation_real_closure
39instantiation40, 41, 42, 43,  ⊢  
  : , :
40theorem  ⊢  
 proveit.numbers.division.div_real_closure
41instantiation96, 50, 44  ⊢  
  : , : , :
42instantiation45, 46, 98,  ⊢  
  : , :
43instantiation47, 48, 49,  ⊢  
  : , :
44instantiation96, 55, 85  ⊢  
  : , : , :
45theorem  ⊢  
 proveit.numbers.exponentiation.exp_real_closure_nat_power
46instantiation96, 50, 51,  ⊢  
  : , : , :
47theorem  ⊢  
 proveit.numbers.exponentiation.exp_rational_non_zero__not_zero
48instantiation96, 53, 52,  ⊢  
  : , : , :
49instantiation96, 53, 54  ⊢  
  : , : , :
50theorem  ⊢  
 proveit.numbers.number_sets.real_numbers.rational_within_real
51instantiation96, 55, 59,  ⊢  
  : , : , :
52instantiation96, 57, 56,  ⊢  
  : , : , :
53theorem  ⊢  
 proveit.numbers.number_sets.rational_numbers.nonzero_int_within_rational_nonzero
54instantiation96, 57, 58  ⊢  
  : , : , :
55theorem  ⊢  
 proveit.numbers.number_sets.rational_numbers.int_within_rational
56instantiation72, 59, 60,  ⊢  
  :
57theorem  ⊢  
 proveit.numbers.number_sets.integers.nat_pos_within_nonzero_int
58theorem  ⊢  
 proveit.numbers.numerals.decimals.posnat2
59instantiation96, 61, 68,  ⊢  
  : , : , :
60instantiation78, 62, 63,  ⊢  
  : , : , :
61instantiation83, 66, 67  ⊢  
  : , :
62instantiation64, 65  ⊢  
  :
63instantiation84, 66, 67, 68,  ⊢  
  : , : , :
64theorem  ⊢  
 proveit.numbers.number_sets.natural_numbers.natural_pos_is_pos
65instantiation69, 70, 82  ⊢  
  : , :
66instantiation89, 73, 85  ⊢  
  : , :
67instantiation89, 90, 71  ⊢  
  : , :
68assumption  ⊢  
69theorem  ⊢  
 proveit.numbers.addition.add_nat_pos_closure_bin
70instantiation72, 73, 74  ⊢  
  :
71instantiation96, 75, 76  ⊢  
  : , : , :
72theorem  ⊢  
 proveit.numbers.number_sets.integers.pos_int_is_natural_pos
73instantiation96, 77, 87  ⊢  
  : , : , :
74instantiation78, 79, 80  ⊢  
  : , : , :
75theorem  ⊢  
 proveit.numbers.number_sets.integers.neg_int_within_int
76instantiation81, 82  ⊢  
  :
77instantiation83, 85, 86  ⊢  
  : , :
78theorem  ⊢  
 proveit.numbers.ordering.transitivity_less_less_eq
79theorem  ⊢  
 proveit.numbers.numerals.decimals.less_0_1
80instantiation84, 85, 86, 87  ⊢  
  : , : , :
81theorem  ⊢  
 proveit.numbers.negation.int_neg_closure
82theorem  ⊢  
 proveit.numbers.numerals.decimals.posnat1
83theorem  ⊢  
 proveit.numbers.number_sets.integers.int_interval_within_int
84theorem  ⊢  
 proveit.numbers.number_sets.integers.interval_lower_bound
85instantiation96, 97, 88  ⊢  
  : , : , :
86instantiation89, 90, 91  ⊢  
  : , :
87assumption  ⊢  
88theorem  ⊢  
 proveit.numbers.numerals.decimals.nat1
89theorem  ⊢  
 proveit.numbers.addition.add_int_closure_bin
90instantiation96, 92, 93  ⊢  
  : , : , :
91instantiation94, 95  ⊢  
  :
92theorem  ⊢  
 proveit.numbers.number_sets.integers.nat_pos_within_int
93theorem  ⊢  
 proveit.physics.quantum.QPE._two_pow_t_minus_one_is_nat_pos
94theorem  ⊢  
 proveit.numbers.negation.int_closure
95instantiation96, 97, 98  ⊢  
  : , : , :
96theorem  ⊢  
 proveit.logic.sets.inclusion.superset_membership_from_proper_subset
97theorem  ⊢  
 proveit.numbers.number_sets.integers.nat_within_int
98theorem  ⊢  
 proveit.numbers.numerals.decimals.nat2
*equality replacement requirements