Metamath Proof Explorer


Theorem nn0ind-raph

Description: Principle of Mathematical Induction (inference schema) on nonnegative integers. The first four hypotheses give us the substitution instances we need; the last two are the basis and the induction step. Raph Levien remarks: "This seems a bit painful. I wonder if an explicit substitution version would be easier." (Contributed by Raph Levien, 10-Apr-2004)

Ref Expression
Hypotheses nn0ind-raph.1 x = 0 φ ψ
nn0ind-raph.2 x = y φ χ
nn0ind-raph.3 x = y + 1 φ θ
nn0ind-raph.4 x = A φ τ
nn0ind-raph.5 ψ
nn0ind-raph.6 y 0 χ θ
Assertion nn0ind-raph A 0 τ

Proof

Step Hyp Ref Expression
1 nn0ind-raph.1 x = 0 φ ψ
2 nn0ind-raph.2 x = y φ χ
3 nn0ind-raph.3 x = y + 1 φ θ
4 nn0ind-raph.4 x = A φ τ
5 nn0ind-raph.5 ψ
6 nn0ind-raph.6 y 0 χ θ
7 elnn0 A 0 A A = 0
8 dfsbcq2 z = 1 z x φ [˙ 1 / x]˙ φ
9 nfv x χ
10 9 2 sbhypf z = y z x φ χ
11 nfv x θ
12 11 3 sbhypf z = y + 1 z x φ θ
13 nfv x τ
14 13 4 sbhypf z = A z x φ τ
15 nfsbc1v x [˙ 1 / x]˙ φ
16 1ex 1 V
17 c0ex 0 V
18 0nn0 0 0
19 eleq1a 0 0 y = 0 y 0
20 18 19 ax-mp y = 0 y 0
21 5 1 mpbiri x = 0 φ
22 eqeq2 y = 0 x = y x = 0
23 22 2 syl6bir y = 0 x = 0 φ χ
24 23 pm5.74d y = 0 x = 0 φ x = 0 χ
25 21 24 mpbii y = 0 x = 0 χ
26 25 com12 x = 0 y = 0 χ
27 17 26 vtocle y = 0 χ
28 20 27 6 sylc y = 0 θ
29 28 adantr y = 0 x = 1 θ
30 oveq1 y = 0 y + 1 = 0 + 1
31 0p1e1 0 + 1 = 1
32 30 31 eqtrdi y = 0 y + 1 = 1
33 32 eqeq2d y = 0 x = y + 1 x = 1
34 33 3 syl6bir y = 0 x = 1 φ θ
35 34 imp y = 0 x = 1 φ θ
36 29 35 mpbird y = 0 x = 1 φ
37 36 ex y = 0 x = 1 φ
38 17 37 vtocle x = 1 φ
39 sbceq1a x = 1 φ [˙ 1 / x]˙ φ
40 38 39 mpbid x = 1 [˙ 1 / x]˙ φ
41 15 16 40 vtoclef [˙ 1 / x]˙ φ
42 nnnn0 y y 0
43 42 6 syl y χ θ
44 8 10 12 14 41 43 nnind A τ
45 nfv x 0 = A τ
46 eqeq1 x = 0 x = A 0 = A
47 1 bicomd x = 0 ψ φ
48 47 4 sylan9bb x = 0 x = A ψ τ
49 5 48 mpbii x = 0 x = A τ
50 49 ex x = 0 x = A τ
51 46 50 sylbird x = 0 0 = A τ
52 45 17 51 vtoclef 0 = A τ
53 52 eqcoms A = 0 τ
54 44 53 jaoi A A = 0 τ
55 7 54 sylbi A 0 τ