| | step type | requirements | statement |
| 0 | modus ponens | 1, 2 | ⊢  |
| 1 | instantiation | 5, 3, 4 | ⊢  |
| | : , : , :  |
| 2 | assumption | | ⊢  |
| 3 | instantiation | 5, 6, 7 | ⊢  |
| | : , : , :  |
| 4 | instantiation | 11, 8, 9 | ⊢  |
| | : , : , :  |
| 5 | theorem | | ⊢  |
| | proveit.logic.equality.sub_left_side_into |
| 6 | deduction | 10 | ⊢  |
| 7 | instantiation | 11, 27, 12 | ⊢  |
| | : , : , :  |
| 8 | theorem | | ⊢  |
| | proveit.numbers.numerals.decimals.nat5 |
| 9 | instantiation | 13 | ⊢  |
| | : , : , : , : , :  |
| 10 | instantiation | 16, 14, 15 | ⊢  |
| | : , : , :  |
| 11 | axiom | | ⊢  |
| | proveit.logic.sets.enumeration.enum_set_def |
| 12 | instantiation | 37 | ⊢  |
| | : , : , :  |
| 13 | theorem | | ⊢  |
| | proveit.numbers.numerals.decimals.tuple_len_5_typical_eq |
| 14 | instantiation | 16, 17, 18 | ⊢  |
| | : , : , :  |
| 15 | instantiation | 22, 27, 31, 34, 19, 36, 23, 45, 24, 25, 46 | ⊢  |
| | : , : , : , : , : , : , :  |
| 16 | theorem | | ⊢  |
| | proveit.logic.equality.sub_right_side_into |
| 17 | instantiation | 26, 27, 33, 34, 28, 20, 36, 21 | ⊢  |
| | : , : , : , : , : , :  |
| 18 | instantiation | 22, 31, 33, 30, 23, 24, 25, 45, 46 | ⊢  |
| | : , : , : , : , : , : , :  |
| 19 | instantiation | 37 | ⊢  |
| | : , : , :  |
| 20 | instantiation | 41 | ⊢  |
| | : , :  |
| 21 | instantiation | 26, 34, 27, 31, 36, 28, 29 | ⊢  |
| | : , : , : , : , : , :  |
| 22 | theorem | | ⊢  |
| | proveit.logic.booleans.disjunction.leftward_commutation |
| 23 | instantiation | 32, 34, 33, 36, 30, 39 | ⊢  |
| | : , : , : , : , :  |
| 24 | instantiation | 32, 31, 39 | ⊢  |
| | : , : , : , : , :  |
| 25 | instantiation | 32, 33, 34, 35, 36, 39 | ⊢  |
| | : , : , : , : , :  |
| 26 | theorem | | ⊢  |
| | proveit.logic.booleans.disjunction.disassociate |
| 27 | theorem | | ⊢  |
| | proveit.numbers.numerals.decimals.nat3 |
| 28 | instantiation | 37 | ⊢  |
| | : , : , :  |
| 29 | instantiation | 38, 39, 40, 43 | ⊢  |
| | : , :  |
| 30 | instantiation | 41 | ⊢  |
| | : , :  |
| 31 | theorem | | ⊢  |
| | proveit.numbers.numerals.decimals.nat1 |
| 32 | theorem | | ⊢  |
| | proveit.logic.booleans.disjunction.each_is_bool |
| 33 | theorem | | ⊢  |
| | proveit.numbers.numerals.decimals.nat2 |
| 34 | axiom | | ⊢  |
| | proveit.numbers.number_sets.natural_numbers.zero_in_nats |
| 35 | instantiation | 41 | ⊢  |
| | : , :  |
| 36 | theorem | | ⊢  |
| | proveit.core_expr_types.tuples.tuple_len_0_typical_eq |
| 37 | theorem | | ⊢  |
| | proveit.numbers.numerals.decimals.tuple_len_3_typical_eq |
| 38 | theorem | | ⊢  |
| | proveit.logic.booleans.disjunction.or_if_left |
| 39 | instantiation | 42, 43 | ⊢  |
| | :  |
| 40 | instantiation | 44, 45, 46 | ⊢  |
| | : , :  |
| 41 | theorem | | ⊢  |
| | proveit.numbers.numerals.decimals.tuple_len_2_typical_eq |
| 42 | theorem | | ⊢  |
| | proveit.logic.booleans.in_bool_if_true |
| 43 | assumption | | ⊢  |
| 44 | theorem | | ⊢  |
| | proveit.logic.booleans.disjunction.binary_closure |
| 45 | instantiation | 47 | ⊢  |
| | : , :  |
| 46 | instantiation | 47 | ⊢  |
| | : , :  |
| 47 | axiom | | ⊢  |
| | proveit.logic.equality.equality_in_bool |