Theorem eqsucext | index | src |

theorem eqsucext (a b: nat) {x: nat}:
  $ a = b <-> A. x (a = suc x <-> b = suc x) $;
StepHypRefExpression
1 eqeq1
a = b -> (a = suc x <-> b = suc x)
2 1 iald
a = b -> A. x (a = suc x <-> b = suc x)
3 anr
A. x (a = suc x <-> b = suc x) /\ a = 0 -> a = 0
4 exsuc
a != 0 <-> E. x a = suc x
5 4 conv ne
~a = 0 <-> E. x a = suc x
6 exsuc
b != 0 <-> E. x b = suc x
7 6 conv ne
~b = 0 <-> E. x b = suc x
8 exeq
A. x (a = suc x <-> b = suc x) -> (E. x a = suc x <-> E. x b = suc x)
9 5, 7, 8 bitr4g
A. x (a = suc x <-> b = suc x) -> (~a = 0 <-> ~b = 0)
10 9 bi2d
A. x (a = suc x <-> b = suc x) -> ~b = 0 -> ~a = 0
11 10 con4d
A. x (a = suc x <-> b = suc x) -> a = 0 -> b = 0
12 11 imp
A. x (a = suc x <-> b = suc x) /\ a = 0 -> b = 0
13 3, 12 eqtr4d
A. x (a = suc x <-> b = suc x) /\ a = 0 -> a = b
14 13 exp
A. x (a = suc x <-> b = suc x) -> a = 0 -> a = b
15 eexb
E. x a = suc x -> a = b <-> A. x (a = suc x -> a = b)
16 anr
(a = suc x <-> b = suc x) /\ a = suc x -> a = suc x
17 bi1
(a = suc x <-> b = suc x) -> a = suc x -> b = suc x
18 17 imp
(a = suc x <-> b = suc x) /\ a = suc x -> b = suc x
19 16, 18 eqtr4d
(a = suc x <-> b = suc x) /\ a = suc x -> a = b
20 19 exp
(a = suc x <-> b = suc x) -> a = suc x -> a = b
21 20 alimi
A. x (a = suc x <-> b = suc x) -> A. x (a = suc x -> a = b)
22 15, 21 sylibr
A. x (a = suc x <-> b = suc x) -> E. x a = suc x -> a = b
23 5, 22 syl5bi
A. x (a = suc x <-> b = suc x) -> ~a = 0 -> a = b
24 14, 23 casesd
A. x (a = suc x <-> b = suc x) -> a = b
25 2, 24 ibii
a = b <-> A. x (a = suc x <-> b = suc x)

Axiom use

axs_prop_calc (ax_1, ax_2, ax_3, ax_mp, itru), axs_pred_calc (ax_gen, ax_4, ax_5, ax_6, ax_7, ax_10, ax_11, ax_12), axs_peano (peano1, peano2, peano5)