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  ⊢  
  : , : , : , :
1theorem  ⊢  
 proveit.logic.equality.four_chain_transitivity
2instantiation5, 6, 7, 8, 9, 10, 11, 12*  ⊢  
  : , : , : , :
3instantiation59  ⊢  
  :
4instantiation13, 14  ⊢  
  : , :
5theorem  ⊢  
 proveit.core_expr_types.tuples.general_len
6theorem  ⊢  
 proveit.numbers.numerals.decimals.posnat2
7instantiation56  ⊢  
  : , :
8instantiation56  ⊢  
  : , :
9instantiation56  ⊢  
  : , :
10instantiation15, 87, 27  ⊢  
  : , : , :
11instantiation15, 16, 28  ⊢  
  : , : , :
12instantiation29, 17, 18  ⊢  
  : , : , :
13theorem  ⊢  
 proveit.logic.equality.equals_reversal
14instantiation19, 20  ⊢  
  : , :
15theorem  ⊢  
 proveit.logic.equality.sub_left_side_into
16instantiation21, 22, 23  ⊢  
  :
17instantiation24, 92, 25, 26, 27, 28  ⊢  
  : , : , : , :
18instantiation29, 30, 31  ⊢  
  : , : , :
19theorem  ⊢  
 proveit.core_expr_types.tuples.range_from1_len
20instantiation90, 32, 69  ⊢  
  : , : , :
21theorem  ⊢  
 proveit.numbers.number_sets.integers.nonneg_int_is_natural
22instantiation33, 34, 35  ⊢  
  : , :
23instantiation36, 37  ⊢  
  : , :
24axiom  ⊢  
 proveit.core_expr_types.operations.operands_substitution
25instantiation56  ⊢  
  : , :
26instantiation56  ⊢  
  : , :
27instantiation38, 63, 49  ⊢  
  : , : , :
28instantiation39, 87, 92, 43, 40, 45, 48, 64, 63, 41*  ⊢  
  : , : , : , : , : , :
29axiom  ⊢  
 proveit.logic.equality.equals_transitivity
30instantiation42, 87, 92, 43, 44, 45, 63, 48, 46  ⊢  
  : , : , : , : , : , :
31instantiation47, 63, 48, 49  ⊢  
  : , : , :
32theorem  ⊢  
 proveit.numbers.number_sets.natural_numbers.nat_pos_within_nat
33theorem  ⊢  
 proveit.numbers.addition.add_int_closure_bin
34instantiation90, 50, 69  ⊢  
  : , : , :
35instantiation90, 51, 81  ⊢  
  : , : , :
36theorem  ⊢  
 proveit.numbers.addition.subtraction.nonneg_difference
37instantiation52, 69  ⊢  
  :
38theorem  ⊢  
 proveit.numbers.addition.subtraction.add_cancel_triple_12
39theorem  ⊢  
 proveit.numbers.addition.association
40instantiation56  ⊢  
  : , :
41instantiation53, 54, 55  ⊢  
  : , : , :
42theorem  ⊢  
 proveit.numbers.addition.disassociation
43axiom  ⊢  
 proveit.numbers.number_sets.natural_numbers.zero_in_nats
44instantiation56  ⊢  
  : , :
45theorem  ⊢  
 proveit.core_expr_types.tuples.tuple_len_0_typical_eq
46instantiation90, 78, 57  ⊢  
  : , : , :
47theorem  ⊢  
 proveit.numbers.addition.subtraction.add_cancel_triple_13
48instantiation90, 78, 58  ⊢  
  : , : , :
49instantiation59  ⊢  
  :
50theorem  ⊢  
 proveit.numbers.number_sets.integers.nat_pos_within_int
51theorem  ⊢  
 proveit.numbers.number_sets.integers.neg_int_within_int
52theorem  ⊢  
 proveit.numbers.number_sets.natural_numbers.natural_pos_lower_bound
53theorem  ⊢  
 proveit.logic.equality.sub_right_side_into
54instantiation60, 63, 72, 61  ⊢  
  : , : , :
55instantiation62, 63, 64  ⊢  
  : , :
56theorem  ⊢  
 proveit.numbers.numerals.decimals.tuple_len_2_typical_eq
57instantiation90, 65, 66  ⊢  
  : , : , :
58instantiation67, 68, 69  ⊢  
  : , : , :
59axiom  ⊢  
 proveit.logic.equality.equals_reflexivity
60theorem  ⊢  
 proveit.numbers.addition.subtraction.subtract_from_add_reversed
61theorem  ⊢  
 proveit.numbers.numerals.decimals.add_1_1
62theorem  ⊢  
 proveit.numbers.addition.commutation
63instantiation90, 78, 70  ⊢  
  : , : , :
64instantiation71, 72  ⊢  
  :
65theorem  ⊢  
 proveit.numbers.number_sets.real_numbers.real_neg_within_real
66instantiation90, 73, 74  ⊢  
  : , : , :
67theorem  ⊢  
 proveit.logic.sets.inclusion.unfold_subset_eq
68instantiation75, 76  ⊢  
  : , :
69assumption  ⊢  
70instantiation90, 83, 77  ⊢  
  : , : , :
71theorem  ⊢  
 proveit.numbers.negation.complex_closure
72instantiation90, 78, 79  ⊢  
  : , : , :
73theorem  ⊢  
 proveit.numbers.number_sets.real_numbers.rational_neg_within_real_neg
74instantiation90, 80, 81  ⊢  
  : , : , :
75theorem  ⊢  
 proveit.logic.sets.inclusion.relax_proper_subset
76theorem  ⊢  
 proveit.numbers.number_sets.real_numbers.nat_pos_within_real
77instantiation90, 88, 82  ⊢  
  : , : , :
78theorem  ⊢  
 proveit.numbers.number_sets.complex_numbers.real_within_complex
79instantiation90, 83, 84  ⊢  
  : , : , :
80theorem  ⊢  
 proveit.numbers.number_sets.rational_numbers.neg_int_within_rational_neg
81instantiation85, 86  ⊢  
  :
82instantiation90, 91, 87  ⊢  
  : , : , :
83theorem  ⊢  
 proveit.numbers.number_sets.real_numbers.rational_within_real
84instantiation90, 88, 89  ⊢  
  : , : , :
85theorem  ⊢  
 proveit.numbers.negation.int_neg_closure
86theorem  ⊢  
 proveit.numbers.numerals.decimals.posnat1
87theorem  ⊢  
 proveit.numbers.numerals.decimals.nat1
88theorem  ⊢  
 proveit.numbers.number_sets.rational_numbers.int_within_rational
89instantiation90, 91, 92  ⊢  
  : , : , :
90theorem  ⊢  
 proveit.logic.sets.inclusion.superset_membership_from_proper_subset
91theorem  ⊢  
 proveit.numbers.number_sets.integers.nat_within_int
92theorem  ⊢  
 proveit.numbers.numerals.decimals.nat2
*equality replacement requirements