Metamath Proof Explorer


Theorem peano5

Description: The induction postulate: any class containing zero and closed under the successor operation contains all natural numbers. One of Peano's five postulates for arithmetic. Proposition 7.30(5) of TakeutiZaring p. 43, except our proof does not require the Axiom of Infinity. The more traditional statement of mathematical induction as a theorem schema, with a basis and an induction step, is derived from this theorem as Theorem findes . (Contributed by NM, 18-Feb-2004) Avoid ax-10 , ax-12 . (Revised by Gino Giotto, 3-Oct-2024)

Ref Expression
Assertion peano5
|- ( ( (/) e. A /\ A. x e. _om ( x e. A -> suc x e. A ) ) -> _om C_ A )

Proof

Step Hyp Ref Expression
1 eldifn
 |-  ( z e. ( _om \ A ) -> -. z e. A )
2 1 adantl
 |-  ( ( ( (/) e. A /\ A. x e. _om ( x e. A -> suc x e. A ) ) /\ z e. ( _om \ A ) ) -> -. z e. A )
3 eldifi
 |-  ( z e. ( _om \ A ) -> z e. _om )
4 elndif
 |-  ( (/) e. A -> -. (/) e. ( _om \ A ) )
5 eleq1
 |-  ( z = (/) -> ( z e. ( _om \ A ) <-> (/) e. ( _om \ A ) ) )
6 5 biimpcd
 |-  ( z e. ( _om \ A ) -> ( z = (/) -> (/) e. ( _om \ A ) ) )
7 6 necon3bd
 |-  ( z e. ( _om \ A ) -> ( -. (/) e. ( _om \ A ) -> z =/= (/) ) )
8 4 7 mpan9
 |-  ( ( (/) e. A /\ z e. ( _om \ A ) ) -> z =/= (/) )
9 nnsuc
 |-  ( ( z e. _om /\ z =/= (/) ) -> E. y e. _om z = suc y )
10 3 8 9 syl2an2
 |-  ( ( (/) e. A /\ z e. ( _om \ A ) ) -> E. y e. _om z = suc y )
11 10 ad4ant13
 |-  ( ( ( ( (/) e. A /\ A. x e. _om ( x e. A -> suc x e. A ) ) /\ z e. ( _om \ A ) ) /\ ( ( _om \ A ) i^i z ) = (/) ) -> E. y e. _om z = suc y )
12 eleq1w
 |-  ( x = y -> ( x e. A <-> y e. A ) )
13 suceq
 |-  ( x = y -> suc x = suc y )
14 13 eleq1d
 |-  ( x = y -> ( suc x e. A <-> suc y e. A ) )
15 12 14 imbi12d
 |-  ( x = y -> ( ( x e. A -> suc x e. A ) <-> ( y e. A -> suc y e. A ) ) )
16 15 rspccv
 |-  ( A. x e. _om ( x e. A -> suc x e. A ) -> ( y e. _om -> ( y e. A -> suc y e. A ) ) )
17 vex
 |-  y e. _V
18 17 sucid
 |-  y e. suc y
19 eleq2
 |-  ( z = suc y -> ( y e. z <-> y e. suc y ) )
20 18 19 mpbiri
 |-  ( z = suc y -> y e. z )
21 eleq1
 |-  ( z = suc y -> ( z e. _om <-> suc y e. _om ) )
22 peano2b
 |-  ( y e. _om <-> suc y e. _om )
23 21 22 bitr4di
 |-  ( z = suc y -> ( z e. _om <-> y e. _om ) )
24 minel
 |-  ( ( y e. z /\ ( ( _om \ A ) i^i z ) = (/) ) -> -. y e. ( _om \ A ) )
25 neldif
 |-  ( ( y e. _om /\ -. y e. ( _om \ A ) ) -> y e. A )
26 24 25 sylan2
 |-  ( ( y e. _om /\ ( y e. z /\ ( ( _om \ A ) i^i z ) = (/) ) ) -> y e. A )
27 26 exp32
 |-  ( y e. _om -> ( y e. z -> ( ( ( _om \ A ) i^i z ) = (/) -> y e. A ) ) )
28 23 27 syl6bi
 |-  ( z = suc y -> ( z e. _om -> ( y e. z -> ( ( ( _om \ A ) i^i z ) = (/) -> y e. A ) ) ) )
29 20 28 mpid
 |-  ( z = suc y -> ( z e. _om -> ( ( ( _om \ A ) i^i z ) = (/) -> y e. A ) ) )
30 3 29 syl5
 |-  ( z = suc y -> ( z e. ( _om \ A ) -> ( ( ( _om \ A ) i^i z ) = (/) -> y e. A ) ) )
31 30 impd
 |-  ( z = suc y -> ( ( z e. ( _om \ A ) /\ ( ( _om \ A ) i^i z ) = (/) ) -> y e. A ) )
32 eleq1a
 |-  ( suc y e. A -> ( z = suc y -> z e. A ) )
33 32 com12
 |-  ( z = suc y -> ( suc y e. A -> z e. A ) )
34 31 33 imim12d
 |-  ( z = suc y -> ( ( y e. A -> suc y e. A ) -> ( ( z e. ( _om \ A ) /\ ( ( _om \ A ) i^i z ) = (/) ) -> z e. A ) ) )
35 34 com13
 |-  ( ( z e. ( _om \ A ) /\ ( ( _om \ A ) i^i z ) = (/) ) -> ( ( y e. A -> suc y e. A ) -> ( z = suc y -> z e. A ) ) )
36 16 35 sylan9
 |-  ( ( A. x e. _om ( x e. A -> suc x e. A ) /\ ( z e. ( _om \ A ) /\ ( ( _om \ A ) i^i z ) = (/) ) ) -> ( y e. _om -> ( z = suc y -> z e. A ) ) )
37 36 rexlimdv
 |-  ( ( A. x e. _om ( x e. A -> suc x e. A ) /\ ( z e. ( _om \ A ) /\ ( ( _om \ A ) i^i z ) = (/) ) ) -> ( E. y e. _om z = suc y -> z e. A ) )
38 37 exp32
 |-  ( A. x e. _om ( x e. A -> suc x e. A ) -> ( z e. ( _om \ A ) -> ( ( ( _om \ A ) i^i z ) = (/) -> ( E. y e. _om z = suc y -> z e. A ) ) ) )
39 38 a1i
 |-  ( (/) e. A -> ( A. x e. _om ( x e. A -> suc x e. A ) -> ( z e. ( _om \ A ) -> ( ( ( _om \ A ) i^i z ) = (/) -> ( E. y e. _om z = suc y -> z e. A ) ) ) ) )
40 39 imp41
 |-  ( ( ( ( (/) e. A /\ A. x e. _om ( x e. A -> suc x e. A ) ) /\ z e. ( _om \ A ) ) /\ ( ( _om \ A ) i^i z ) = (/) ) -> ( E. y e. _om z = suc y -> z e. A ) )
41 11 40 mpd
 |-  ( ( ( ( (/) e. A /\ A. x e. _om ( x e. A -> suc x e. A ) ) /\ z e. ( _om \ A ) ) /\ ( ( _om \ A ) i^i z ) = (/) ) -> z e. A )
42 2 41 mtand
 |-  ( ( ( (/) e. A /\ A. x e. _om ( x e. A -> suc x e. A ) ) /\ z e. ( _om \ A ) ) -> -. ( ( _om \ A ) i^i z ) = (/) )
43 42 nrexdv
 |-  ( ( (/) e. A /\ A. x e. _om ( x e. A -> suc x e. A ) ) -> -. E. z e. ( _om \ A ) ( ( _om \ A ) i^i z ) = (/) )
44 ordom
 |-  Ord _om
45 difss
 |-  ( _om \ A ) C_ _om
46 tz7.5
 |-  ( ( Ord _om /\ ( _om \ A ) C_ _om /\ ( _om \ A ) =/= (/) ) -> E. z e. ( _om \ A ) ( ( _om \ A ) i^i z ) = (/) )
47 44 45 46 mp3an12
 |-  ( ( _om \ A ) =/= (/) -> E. z e. ( _om \ A ) ( ( _om \ A ) i^i z ) = (/) )
48 47 necon1bi
 |-  ( -. E. z e. ( _om \ A ) ( ( _om \ A ) i^i z ) = (/) -> ( _om \ A ) = (/) )
49 43 48 syl
 |-  ( ( (/) e. A /\ A. x e. _om ( x e. A -> suc x e. A ) ) -> ( _om \ A ) = (/) )
50 ssdif0
 |-  ( _om C_ A <-> ( _om \ A ) = (/) )
51 49 50 sylibr
 |-  ( ( (/) e. A /\ A. x e. _om ( x e. A -> suc x e. A ) ) -> _om C_ A )