HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
Unicode version

Theorem indpi 3828
Description: Principle of Finite Induction on positive integers.
Hypotheses
Ref Expression
indpi.1 |- (x = 1o -> (ph <-> ps))
indpi.2 |- (x = y -> (ph <-> ch))
indpi.3 |- (x = (y +N 1o) -> (ph <-> th))
indpi.4 |- (x = A -> (ph <-> ta ))
indpi.5 |- ps
indpi.6 |- (y e. N. -> (ch -> th))
Assertion
Ref Expression
indpi |- (A e. N. -> ta )
Distinct variable group(s):   x,y   x,A   ps,x   ch,x   th,x   ta ,x   ph,y

Proof of Theorem indpi
StepHypRef Expression
1 nlt1pi 3827 . . . 4 |- -. A <N 1o
2 1pi 3805 . . . . 5 |- 1o e. N.
3 ltsopi 3810 . . . . . 6 |- <N Or N.
4 sotric 2148 . . . . . 6 |- (( <N Or N. /\ (A e. N. /\ 1o e. N.)) -> (A <N 1o <-> -. (A = 1o \/ 1o <N A)))
53, 4mpan 518 . . . . 5 |- ((A e. N. /\ 1o e. N.) -> (A <N 1o <-> -. (A = 1o \/ 1o <N A)))
62, 5mpan2 519 . . . 4 |- (A e. N. -> (A <N 1o <-> -. (A = 1o \/ 1o <N A)))
71, 6mtbii 538 . . 3 |- (A e. N. -> -. -. (A = 1o \/ 1o <N A))
8 nega 78 . . 3 |- (-. -. (A = 1o \/ 1o <N A) -> (A = 1o \/ 1o <N A))
97, 8syl 12 . 2 |- (A e. N. -> (A = 1o \/ 1o <N A))
102elisseti 1355 . . . . . . 7 |- 1o e. V
1110eqvinc 1407 . . . . . 6 |- (1o = A <-> E.x(x = 1o /\ x = A))
12 indpi.4 . . . . . 6 |- (x = A -> (ph <-> ta ))
13 indpi.5 . . . . . . 7 |- ps
14 indpi.1 . . . . . . 7 |- (x = 1o -> (ph <-> ps))
1513, 14mpbiri 169 . . . . . 6 |- (x = 1o -> ph)
1611, 12, 15gencl 1365 . . . . 5 |- (1o = A -> ta )
1716cleqcoms 1104 . . . 4 |- (A = 1o -> ta )
1817a1i 7 . . 3 |- (A e. N. -> (A = 1o -> ta ))
19 1onn 3193 . . . . . . 7 |- 1o e. om
20 eleq1 1149 . . . . . . . . . 10 |- (x = 1o -> (x e. N. <-> 1o e. N.))
21 breq2 2066 . . . . . . . . . 10 |- (x = 1o -> (1o <N x <-> 1o <N 1o))
2220, 21anbi12d 476 . . . . . . . . 9 |- (x = 1o -> ((x e. N. /\ 1o <N x) <-> (1o e. N. /\ 1o <N 1o)))
2322, 14imbi12d 474 . . . . . . . 8 |- (x = 1o -> (((x e. N. /\ 1o <N x) -> ph) <-> ((1o e. N. /\ 1o <N 1o) -> ps)))
24 eleq1 1149 . . . . . . . . . 10 |- (x = y -> (x e. N. <-> y e. N.))
25 breq2 2066 . . . . . . . . . 10 |- (x = y -> (1o <N x <-> 1o <N y))
2624, 25anbi12d 476 . . . . . . . . 9 |- (x = y -> ((x e. N. /\ 1o <N x) <-> (y e. N. /\ 1o <N y)))
27 indpi.2 . . . . . . . . 9 |- (x = y -> (ph <-> ch))
2826, 27imbi12d 474 . . . . . . . 8 |- (x = y -> (((x e. N. /\ 1o <N x) -> ph) <-> ((y e. N. /\ 1o <N y) -> ch)))
29 eleq1 1149 . . . . . . . . . . . . . . . . 17 |- (x = suc y -> (x e. om <-> suc y e. om))
30 peano2b 2388 . . . . . . . . . . . . . . . . 17 |- (y e. om <-> suc y e. om)
3129, 30syl6bbr 416 . . . . . . . . . . . . . . . 16 |- (x = suc y -> (x e. om <-> y e. om))
32 pinn 3800 . . . . . . . . . . . . . . . 16 |- (x e. N. -> x e. om)
3331, 32syl5bi 183 . . . . . . . . . . . . . . 15 |- (x = suc y -> (x e. N. -> y e. om))
3433adantrd 308 . . . . . . . . . . . . . 14 |- (x = suc y -> ((x e. N. /\ 1o <N x) -> y e. om))
35 eleq2 1150 . . . . . . . . . . . . . . . 16 |- (x = suc y -> (1o e. x <-> 1o e. suc y))
36 elsuci 2289 . . . . . . . . . . . . . . . . 17 |- (1o e. suc y -> (1o e. y \/ 1o = y))
37 n0i 1712 . . . . . . . . . . . . . . . . . 18 |- (1o e. y -> -. y = (/))
38 0ex 1745 . . . . . . . . . . . . . . . . . . . . . 22 |- (/) e. V
3938sucid 2304 . . . . . . . . . . . . . . . . . . . . 21 |- (/) e. suc (/)
40 df-1o 3104 . . . . . . . . . . . . . . . . . . . . 21 |- 1o = suc (/)
4139, 40eleqtrr 1162 . . . . . . . . . . . . . . . . . . . 20 |- (/) e. 1o
42 eleq2 1150 . . . . . . . . . . . . . . . . . . . 20 |- (1o = y -> ((/) e. 1o <-> (/) e. y))
4341, 42mpbii 168 . . . . . . . . . . . . . . . . . . 19 |- (1o = y -> (/) e. y)
44 n0i 1712 . . . . . . . . . . . . . . . . . . 19 |- ((/) e. y -> -. y = (/))
4543, 44syl 12 . . . . . . . . . . . . . . . . . 18 |- (1o = y -> -. y = (/))
4637, 45jaoi 275 . . . . . . . . . . . . . . . . 17 |- ((1o e. y \/ 1o = y) -> -. y = (/))
4736, 46syl 12 . . . . . . . . . . . . . . . 16 |- (1o e. suc y -> -. y = (/))
4835, 47syl6bi 187 . . . . . . . . . . . . . . 15 |- (x = suc y -> (1o e. x -> -. y = (/)))
49 ltpiord 3809 . . . . . . . . . . . . . . . . 17 |- ((1o e. N. /\ x e. N.) -> (1o <N x <-> 1o e. x))
502, 49mpan 518 . . . . . . . . . . . . . . . 16 |- (x e. N. -> (1o <N x <-> 1o e. x))
5150biimpa 324 . . . . . . . . . . . . . . 15 |- ((x e. N. /\ 1o <N x) -> 1o e. x)
5248, 51syl5 22 . . . . . . . . . . . . . 14 |- (x = suc y -> ((x e. N. /\ 1o <N x) -> -. y = (/)))
5334, 52jcad 455 . . . . . . . . . . . . 13 |- (x = suc y -> ((x e. N. /\ 1o <N x) -> (y e. om /\ -. y = (/))))
54 elni 3798 . . . . . . . . . . . . 13 |- (y e. N. <-> (y e. om /\ -. y = (/)))
5553, 54syl6ibr 186 . . . . . . . . . . . 12 |- (x = suc y -> ((x e. N. /\ 1o <N x) -> y e. N.))
56 breq2 2066 . . . . . . . . . . . . 13 |- (x = suc y -> (1o <N x <-> 1o <N suc y))
57 pm3.27 260 . . . . . . . . . . . . 13 |- ((x e. N. /\ 1o <N x) -> 1o <N x)
5856, 57syl5bi 183 . . . . . . . . . . . 12 |- (x = suc y -> ((x e. N. /\ 1o <N x) -> 1o <N suc y))
5955, 58jcad 455 . . . . . . . . . . 11 |- (x = suc y -> ((x e. N. /\ 1o <N x) -> (y e. N. /\ 1o <N suc y)))
60 addpiord 3806 . . . . . . . . . . . . . . . . . . . 20 |- ((y e. N. /\ 1o e. N.) -> (y +N 1o) = (y +o 1o))
612, 60mpan2 519 . . . . . . . . . . . . . . . . . . 19 |- (y e. N. -> (y +N 1o) = (y +o 1o))
62 pion 3801 . . . . . . . . . . . . . . . . . . . 20 |- (y e. N. -> y e. On)
63 oa1suc 3132 . . . . . . . . . . . . . . . . . . . 20 |- (y e. On -> (y +o 1o) = suc y)
6462, 63syl 12 . . . . . . . . . . . . . . . . . . 19 |- (y e. N. -> (y +o 1o) = suc y)
6561, 64eqtrd 1128 . . . . . . . . . . . . . . . . . 18 |- (y e. N. -> (y +N 1o) = suc y)
6665cleq2d 1112 . . . . . . . . . . . . . . . . 17 |- (y e. N. -> (x = (y +N 1o) <-> x = suc y))
6766biimparc 327 . . . . . . . . . . . . . . . 16 |- ((x = suc y /\ y e. N.) -> x = (y +N 1o))
6867eleq1d 1155 . . . . . . . . . . . . . . 15 |- ((x = suc y /\ y e. N.) -> (x e. N. <-> (y +N 1o) e. N.))
69 addclpi 3814 . . . . . . . . . . . . . . . 16 |- ((y e. N. /\ 1o e. N.) -> (y +N 1o) e. N.)
702, 69mpan2 519 . . . . . . . . . . . . . . 15 |- (y e. N. -> (y +N 1o) e. N.)
7168, 70syl5bir 184 . . . . . . . . . . . . . 14 |- ((x = suc y /\ y e. N.) -> (y e. N. -> x e. N.))
7271exp 291 . . . . . . . . . . . . 13 |- (x = suc y -> (y e. N. -> (y e. N. -> x e. N.)))
7372pm2.43d 59 . . . . . . . . . . . 12 |- (x = suc y -> (y e. N. -> x e. N.))
7456biimprd 136 . . . . . . . . . . . 12 |- (x = suc y -> (1o <N suc y -> 1o <N x))
7573, 74anim12d 431 . . . . . . . . . . 11 |- (x = suc y -> ((y e. N. /\ 1o <N suc y) -> (x e. N. /\ 1o <N x)))
7659, 75impbid 397 . . . . . . . . . 10 |- (x = suc y -> ((x e. N. /\ 1o <N x) <-> (y e. N. /\ 1o <N suc y)))
7776imbi1d 465 . . . . . . . . 9 |- (x = suc y -> (((x e. N. /\ 1o <N x) -> ph) <-> ((y e. N. /\ 1o <N suc y) -> ph)))
78 indpi.3 . . . . . . . . . . . . 13 |- (x = (y +N 1o) -> (ph <-> th))
7966, 78syl6bir 188 . . . . . . . . . . . 12 |- (y e. N. -> (x = suc y -> (ph <-> th)))
8079adantr 306 . . . . . . . . . . 11 |- ((y e. N. /\ 1o <N suc y) -> (x = suc y -> (ph <-> th)))
8180com12 13 . . . . . . . . . 10 |- (x = suc y -> ((y e. N. /\ 1o <N suc y) -> (ph <-> th)))
8281pm5.74d 444 . . . . . . . . 9 |- (x = suc y -> (((y e. N. /\ 1o <N suc y) -> ph) <-> ((y e. N. /\ 1o <N suc y) -> th)))
8377, 82bitrd 406 . . . . . . . 8 |- (x = suc y -> (((x e. N. /\ 1o <N x) -> ph) <-> ((y e. N. /\ 1o <N suc y) -> th)))
84 eleq1 1149 . . . . . . . . . 10 |- (x = A -> (x e. N. <-> A e. N.))
85 breq2 2066 . . . . . . . . . 10 |- (x = A -> (1o <N x <-> 1o <N A))
8684, 85anbi12d 476 . . . . . . . . 9 |- (x = A -> ((x e. N. /\ 1o <N x) <-> (A e. N. /\ 1o <N A)))
8786, 12imbi12d 474 . . . . . . . 8 |- (x = A -> (((x e. N. /\ 1o <N x) -> ph) <-> ((A e. N. /\ 1o <N A) -> ta )))
8813a1i 7 . . . . . . . . 9 |- ((1o e. N. /\ 1o <N 1o) -> ps)
8988a1i 7 . . . . . . . 8 |- (1o e. om -> ((1o e. N. /\ 1o <N 1o) -> ps))
90 pm3.2 232 . . . . . . . . . . . . . . 15 |- (y e. N. -> (1o e. y -> (y e. N. /\ 1o e. y)))
91 ltpiord 3809 . . . . . . . . . . . . . . . . 17 |- ((1o e. N. /\ y e. N.) -> (1o <N y <-> 1o e. y))
922, 91mpan 518 . . . . . . . . . . . . . . . 16 |- (y e. N. -> (1o <N y <-> 1o e. y))
9392pm5.32i 489 . . . . . . . . . . . . . . 15 |- ((y e. N. /\ 1o <N y) <-> (y e. N. /\ 1o e. y))
9490, 93syl6ibr 186 . . . . . . . . . . . . . 14 |- (y e. N. -> (1o e. y -> (y e. N. /\ 1o <N y)))
9594syl4d 28 . . . . . . . . . . . . 13 |- (y e. N. -> (((y e. N. /\ 1o <N y) -> ch) -> (1o e. y -> ch)))
9610eqvinc 1407 . . . . . . . . . . . . . . . . 17 |- (1o = y <-> E.x(x = 1o /\ x = y))
9796, 27, 15gencl 1365 . . . . . . . . . . . . . . . 16 |- (1o = y -> ch)
98 jao 274 . . . . . . . . . . . . . . . 16 |- ((1o e. y -> ch) -> ((1o = y -> ch) -> ((1o e. y \/ 1o = y) -> ch)))
9997, 98mpi 44 . . . . . . . . . . . . . . 15 |- (