Metamath Proof Explorer < Previous   Next > Nearby theorems Mirrors  >  Home  >  MPE Home  >  Th. List  >  nn0ind-raph Structured version   Visualization version   GIF version

Theorem nn0ind-raph 12070
 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.)
Hypotheses
Ref Expression
nn0ind-raph.1 (𝑥 = 0 → (𝜑𝜓))
nn0ind-raph.2 (𝑥 = 𝑦 → (𝜑𝜒))
nn0ind-raph.3 (𝑥 = (𝑦 + 1) → (𝜑𝜃))
nn0ind-raph.4 (𝑥 = 𝐴 → (𝜑𝜏))
nn0ind-raph.5 𝜓
nn0ind-raph.6 (𝑦 ∈ ℕ0 → (𝜒𝜃))
Assertion
Ref Expression
nn0ind-raph (𝐴 ∈ ℕ0𝜏)
Distinct variable groups:   𝑥,𝑦   𝑥,𝐴   𝜓,𝑥   𝜒,𝑥   𝜃,𝑥   𝜏,𝑥   𝜑,𝑦
Allowed substitution hints:   𝜑(𝑥)   𝜓(𝑦)   𝜒(𝑦)   𝜃(𝑦)   𝜏(𝑦)   𝐴(𝑦)

Proof of Theorem nn0ind-raph
Dummy variable 𝑧 is distinct from all other variables.
StepHypRef Expression
1 elnn0 11887 . 2 (𝐴 ∈ ℕ0 ↔ (𝐴 ∈ ℕ ∨ 𝐴 = 0))
2 dfsbcq2 3750 . . . 4 (𝑧 = 1 → ([𝑧 / 𝑥]𝜑[1 / 𝑥]𝜑))
3 nfv 1915 . . . . 5 𝑥𝜒
4 nn0ind-raph.2 . . . . 5 (𝑥 = 𝑦 → (𝜑𝜒))
53, 4sbhypf 3527 . . . 4 (𝑧 = 𝑦 → ([𝑧 / 𝑥]𝜑𝜒))
6 nfv 1915 . . . . 5 𝑥𝜃
7 nn0ind-raph.3 . . . . 5 (𝑥 = (𝑦 + 1) → (𝜑𝜃))
86, 7sbhypf 3527 . . . 4 (𝑧 = (𝑦 + 1) → ([𝑧 / 𝑥]𝜑𝜃))
9 nfv 1915 . . . . 5 𝑥𝜏
10 nn0ind-raph.4 . . . . 5 (𝑥 = 𝐴 → (𝜑𝜏))
119, 10sbhypf 3527 . . . 4 (𝑧 = 𝐴 → ([𝑧 / 𝑥]𝜑𝜏))
12 nfsbc1v 3767 . . . . 5 𝑥[1 / 𝑥]𝜑
13 1ex 10626 . . . . 5 1 ∈ V
14 c0ex 10624 . . . . . . 7 0 ∈ V
15 0nn0 11900 . . . . . . . . . . . 12 0 ∈ ℕ0
16 eleq1a 2909 . . . . . . . . . . . 12 (0 ∈ ℕ0 → (𝑦 = 0 → 𝑦 ∈ ℕ0))
1715, 16ax-mp 5 . . . . . . . . . . 11 (𝑦 = 0 → 𝑦 ∈ ℕ0)
18 nn0ind-raph.5 . . . . . . . . . . . . . . 15 𝜓
19 nn0ind-raph.1 . . . . . . . . . . . . . . 15 (𝑥 = 0 → (𝜑𝜓))
2018, 19mpbiri 261 . . . . . . . . . . . . . 14 (𝑥 = 0 → 𝜑)
21 eqeq2 2834 . . . . . . . . . . . . . . . 16 (𝑦 = 0 → (𝑥 = 𝑦𝑥 = 0))
2221, 4syl6bir 257 . . . . . . . . . . . . . . 15 (𝑦 = 0 → (𝑥 = 0 → (𝜑𝜒)))
2322pm5.74d 276 . . . . . . . . . . . . . 14 (𝑦 = 0 → ((𝑥 = 0 → 𝜑) ↔ (𝑥 = 0 → 𝜒)))
2420, 23mpbii 236 . . . . . . . . . . . . 13 (𝑦 = 0 → (𝑥 = 0 → 𝜒))
2524com12 32 . . . . . . . . . . . 12 (𝑥 = 0 → (𝑦 = 0 → 𝜒))
2614, 25vtocle 3559 . . . . . . . . . . 11 (𝑦 = 0 → 𝜒)
27 nn0ind-raph.6 . . . . . . . . . . 11 (𝑦 ∈ ℕ0 → (𝜒𝜃))
2817, 26, 27sylc 65 . . . . . . . . . 10 (𝑦 = 0 → 𝜃)
2928adantr 484 . . . . . . . . 9 ((𝑦 = 0 ∧ 𝑥 = 1) → 𝜃)
30 oveq1 7147 . . . . . . . . . . . . 13 (𝑦 = 0 → (𝑦 + 1) = (0 + 1))
31 0p1e1 11747 . . . . . . . . . . . . 13 (0 + 1) = 1
3230, 31syl6eq 2873 . . . . . . . . . . . 12 (𝑦 = 0 → (𝑦 + 1) = 1)
3332eqeq2d 2833 . . . . . . . . . . 11 (𝑦 = 0 → (𝑥 = (𝑦 + 1) ↔ 𝑥 = 1))
3433, 7syl6bir 257 . . . . . . . . . 10 (𝑦 = 0 → (𝑥 = 1 → (𝜑𝜃)))
3534imp 410 . . . . . . . . 9 ((𝑦 = 0 ∧ 𝑥 = 1) → (𝜑𝜃))
3629, 35mpbird 260 . . . . . . . 8 ((𝑦 = 0 ∧ 𝑥 = 1) → 𝜑)
3736ex 416 . . . . . . 7 (𝑦 = 0 → (𝑥 = 1 → 𝜑))
3814, 37vtocle 3559 . . . . . 6 (𝑥 = 1 → 𝜑)
39 sbceq1a 3758 . . . . . 6 (𝑥 = 1 → (𝜑[1 / 𝑥]𝜑))
4038, 39mpbid 235 . . . . 5 (𝑥 = 1 → [1 / 𝑥]𝜑)
4112, 13, 40vtoclef 3558 . . . 4 [1 / 𝑥]𝜑
42 nnnn0 11892 . . . . 5 (𝑦 ∈ ℕ → 𝑦 ∈ ℕ0)
4342, 27syl 17 . . . 4 (𝑦 ∈ ℕ → (𝜒𝜃))
442, 5, 8, 11, 41, 43nnind 11643 . . 3 (𝐴 ∈ ℕ → 𝜏)
45 nfv 1915 . . . . 5 𝑥(0 = 𝐴𝜏)
46 eqeq1 2826 . . . . . 6 (𝑥 = 0 → (𝑥 = 𝐴 ↔ 0 = 𝐴))
4719bicomd 226 . . . . . . . . 9 (𝑥 = 0 → (𝜓𝜑))
4847, 10sylan9bb 513 . . . . . . . 8 ((𝑥 = 0 ∧ 𝑥 = 𝐴) → (𝜓𝜏))
4918, 48mpbii 236 . . . . . . 7 ((𝑥 = 0 ∧ 𝑥 = 𝐴) → 𝜏)
5049ex 416 . . . . . 6 (𝑥 = 0 → (𝑥 = 𝐴𝜏))
5146, 50sylbird 263 . . . . 5 (𝑥 = 0 → (0 = 𝐴𝜏))
5245, 14, 51vtoclef 3558 . . . 4 (0 = 𝐴𝜏)
5352eqcoms 2830 . . 3 (𝐴 = 0 → 𝜏)
5444, 53jaoi 854 . 2 ((𝐴 ∈ ℕ ∨ 𝐴 = 0) → 𝜏)
551, 54sylbi 220 1 (𝐴 ∈ ℕ0𝜏)
 Colors of variables: wff setvar class Syntax hints:   → wi 4   ↔ wb 209   ∧ wa 399   ∨ wo 844   = wceq 1538  [wsb 2069   ∈ wcel 2114  [wsbc 3747  (class class class)co 7140  0cc0 10526  1c1 10527   + caddc 10529  ℕcn 11625  ℕ0cn0 11885 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2116  ax-9 2124  ax-10 2145  ax-11 2161  ax-12 2178  ax-ext 2794  ax-sep 5179  ax-nul 5186  ax-pow 5243  ax-pr 5307  ax-un 7446  ax-resscn 10583  ax-1cn 10584  ax-icn 10585  ax-addcl 10586  ax-addrcl 10587  ax-mulcl 10588  ax-mulrcl 10589  ax-mulcom 10590  ax-addass 10591  ax-mulass 10592  ax-distr 10593  ax-i2m1 10594  ax-1ne0 10595  ax-1rid 10596  ax-rnegex 10597  ax-rrecex 10598  ax-cnre 10599  ax-pre-lttri 10600  ax-pre-lttrn 10601  ax-pre-ltadd 10602 This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3or 1085  df-3an 1086  df-tru 1541  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2622  df-eu 2653  df-clab 2801  df-cleq 2815  df-clel 2894  df-nfc 2962  df-ne 3012  df-nel 3116  df-ral 3135  df-rex 3136  df-reu 3137  df-rab 3139  df-v 3471  df-sbc 3748  df-csb 3856  df-dif 3911  df-un 3913  df-in 3915  df-ss 3925  df-pss 3927  df-nul 4266  df-if 4440  df-pw 4513  df-sn 4540  df-pr 4542  df-tp 4544  df-op 4546  df-uni 4814  df-iun 4896  df-br 5043  df-opab 5105  df-mpt 5123  df-tr 5149  df-id 5437  df-eprel 5442  df-po 5451  df-so 5452  df-fr 5491  df-we 5493  df-xp 5538  df-rel 5539  df-cnv 5540  df-co 5541  df-dm 5542  df-rn 5543  df-res 5544  df-ima 5545  df-pred 6126  df-ord 6172  df-on 6173  df-lim 6174  df-suc 6175  df-iota 6293  df-fun 6336  df-fn 6337  df-f 6338  df-f1 6339  df-fo 6340  df-f1o 6341  df-fv 6342  df-ov 7143  df-om 7566  df-wrecs 7934  df-recs 7995  df-rdg 8033  df-er 8276  df-en 8497  df-dom 8498  df-sdom 8499  df-pnf 10666  df-mnf 10667  df-ltxr 10669  df-nn 11626  df-n0 11886 This theorem is referenced by: (None)
 Copyright terms: Public domain W3C validator