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

Theorem findsg 3147
Description: Principle of Finite Induction (inference schema) with implicit substitutions. The first four hypotheses establish the substitutions we need. The last two are the basis and the induction hypothesis. The basis of this version is an arbitrary natural number B instead of zero.
Hypotheses
Ref Expression
findsg.1 |- (x = B -> (ph <-> ps))
findsg.2 |- (x = y -> (ph <-> ch))
findsg.3 |- (x = suc y -> (ph <-> th))
findsg.4 |- (x = A -> (ph <-> ta))
findsg.5 |- (B e. om -> ps)
findsg.6 |- (((y e. om /\ B e. om) /\ B (_ y) -> (ch -> th))
Assertion
Ref Expression
findsg |- (((A e. om /\ B e. om) /\ B (_ A) -> ta)
Distinct variable groups:   x,A   x,y,B   ps,x   ch,x   th,x   ta,x   ph,y

Proof of Theorem findsg
StepHypRef Expression
1 sseq2 2073 . . . . . . 7 |- (x = (/) -> (B (_ x <-> B (_ (/)))
21adantl 388 . . . . . 6 |- ((B = (/) /\ x = (/)) -> (B (_ x <-> B (_ (/)))
3 eqeq2 1476 . . . . . . . 8 |- (B = (/) -> (x = B <-> x = (/)))
4 findsg.1 . . . . . . . 8 |- (x = B -> (ph <-> ps))
53, 4syl6bir 215 . . . . . . 7 |- (B = (/) -> (x = (/) -> (ph <-> ps)))
65imp 350 . . . . . 6 |- ((B = (/) /\ x = (/)) -> (ph <-> ps))
72, 6imbi12d 624 . . . . 5 |- ((B = (/) /\ x = (/)) -> ((B (_ x -> ph) <-> (B (_ (/) -> ps)))
81imbi1d 611 . . . . . 6 |- (x = (/) -> ((B (_ x -> ph) <-> (B (_ (/) -> ph)))
9 ss0 2293 . . . . . . . . 9 |- (B (_ (/) -> B = (/))
109con3i 98 . . . . . . . 8 |- (-. B = (/) -> -. B (_ (/))
1110pm2.21d 78 . . . . . . 7 |- (-. B = (/) -> (B (_ (/) -> (ph <-> ps)))
1211pm5.74d 583 . . . . . 6 |- (-. B = (/) -> ((B (_ (/) -> ph) <-> (B (_ (/) -> ps)))
138, 12sylan9bbr 539 . . . . 5 |- ((-. B = (/) /\ x = (/)) -> ((B (_ x -> ph) <-> (B (_ (/) -> ps)))
147, 13pm2.61ian 475 . . . 4 |- (x = (/) -> ((B (_ x -> ph) <-> (B (_ (/) -> ps)))
1514imbi2d 610 . . 3 |- (x = (/) -> ((B e. om -> (B (_ x -> ph)) <-> (B e. om -> (B (_ (/) -> ps))))
16 sseq2 2073 . . . . 5 |- (x = y -> (B (_ x <-> B (_ y))
17 findsg.2 . . . . 5 |- (x = y -> (ph <-> ch))
1816, 17imbi12d 624 . . . 4 |- (x = y -> ((B (_ x -> ph) <-> (B (_ y -> ch)))
1918imbi2d 610 . . 3 |- (x = y -> ((B e. om -> (B (_ x -> ph)) <-> (B e. om -> (B (_ y -> ch))))
20 sseq2 2073 . . . . 5 |- (x = suc y -> (B (_ x <-> B (_ suc y))
21 findsg.3 . . . . 5 |- (x = suc y -> (ph <-> th))
2220, 21imbi12d 624 . . . 4 |- (x = suc y -> ((B (_ x -> ph) <-> (B (_ suc y -> th)))
2322imbi2d 610 . . 3 |- (x = suc y -> ((B e. om -> (B (_ x -> ph)) <-> (B e. om -> (B (_ suc y -> th))))
24 sseq2 2073 . . . . 5 |- (x = A -> (B (_ x <-> B (_ A))
25 findsg.4 . . . . 5 |- (x = A -> (ph <-> ta))
2624, 25imbi12d 624 . . . 4 |- (x = A -> ((B (_ x -> ph) <-> (B (_ A -> ta)))
2726imbi2d 610 . . 3 |- (x = A -> ((B e. om -> (B (_ x -> ph)) <-> (B e. om -> (B (_ A -> ta))))
28 findsg.5 . . . 4 |- (B e. om -> ps)
2928a1d 12 . . 3 |- (B e. om -> (B (_ (/) -> ps))
30 visset 1804 . . . . . . . . . . . . . 14 |- y e. V
3130sucex 3040 . . . . . . . . . . . . 13 |- suc y e. V
3231eqvinc 1874 . . . . . . . . . . . 12 |- (suc y = B <-> E.x(x = suc y /\ x = B))
334, 28syl5bir 210 . . . . . . . . . . . . . 14 |- (x = B -> (B e. om -> ph))
3421biimpd 153 . . . . . . . . . . . . . 14 |- (x = suc y -> (ph -> th))
3533, 34sylan9r 469 . . . . . . . . . . . . 13 |- ((x = suc y /\ x = B) -> (B e. om -> th))
363519.23aiv 1290 . . . . . . . . . . . 12 |- (E.x(x = suc y /\ x = B) -> (B e. om -> th))
3732, 36sylbi 199 . . . . . . . . . . 11 |- (suc y = B -> (B e. om -> th))
3837eqcoms 1470 . . . . . . . . . 10 |- (B = suc y -> (B e. om -> th))
3938imim2i 17 . . . . . . . . 9 |- ((B (_ suc y -> B = suc y) -> (B (_ suc y -> (B e. om -> th)))
4039a1d 12 . . . . . . . 8 |- ((B (_ suc y -> B = suc y) -> ((B (_ y -> ch) -> (B (_ suc y -> (B e. om -> th))))
4140com4r 41 . . . . . . 7 |- (B e. om -> ((B (_ suc y -> B = suc y) -> ((B (_ y -> ch) -> (B (_ suc y -> th))))
4241adantl 388 . . . . . 6 |- ((y e. om /\ B e. om) -> ((B (_ suc y -> B = suc y) -> ((B (_ y -> ch) -> (B (_ suc y -> th))))
43 onsssuc 3048 . . . . . . . . . . 11 |- ((B e. On /\ y e. On) -> (B (_ y <-> B e. suc y))
44 onelpsst 2988 . . . . . . . . . . . 12 |- ((B e. On /\ suc y e. On) -> (B e. suc y <-> (B (_ suc y /\ B =/= suc y)))
45 suceloni 3052 . . . . . . . . . . . 12 |- (y e. On -> suc y e. On)
4644, 45sylan2 451 . . . . . . . . . . 11 |- ((B e. On /\ y e. On) -> (B e. suc y <-> (B (_ suc y /\ B =/= suc y)))
4743, 46bitrd 526 . . . . . . . . . 10 |- ((B e. On /\ y e. On) -> (B (_ y <-> (B (_ suc y /\ B =/= suc y)))
48 nnont 3128 . . . . . . . . . 10 |- (B e. om -> B e. On)
49 nnont 3128 . . . . . . . . . 10 |- (y e. om -> y e. On)
5047, 48, 49syl2an 454 . . . . . . . . 9 |- ((B e. om /\ y e. om) -> (B (_ y <-> (B (_ suc y /\ B =/= suc y)))
5150ancoms 436 . . . . . . . 8 |- ((y e. om /\ B e. om) -> (B (_ y <-> (B (_ suc y /\ B =/= suc y)))
52 findsg.6 . . . . . . . . . . . 12 |- (((y e. om /\ B e. om) /\ B (_ y) -> (ch -> th))
5352ex 373 . . . . . . . . . . 11 |- ((y e. om /\ B e. om) -> (B (_ y -> (ch -> th)))
54 ax-1 4 . . . . . . . . . . 11 |- (th -> (B (_ suc y -> th))
5553, 54syl8 24 . . . . . . . . . 10 |- ((y e. om /\ B e. om) -> (B (_ y -> (ch -> (B (_ suc y -> th))))
5655a2d 13 . . . . . . . . 9 |- ((y e. om /\ B e. om) -> ((B (_ y -> ch) -> (B (_ y -> (B (_ suc y -> th))))
5756com23 32 . . . . . . . 8 |- ((y e. om /\ B e. om) -> (B (_ y -> ((B (_ y -> ch) -> (B (_ suc y -> th))))
5851, 57sylbird 205 . . . . . . 7 |- ((y e. om /\ B e. om) -> ((B (_ suc y /\ B =/= suc y) -> ((B (_ y -> ch) -> (B (_ suc y -> th))))
59 df-ne 1579 . . . . . . . . 9 |- (B =/= suc y <-> -. B = suc y)
6059anbi2i 479 . . . . . . . 8 |- ((B (_ suc y /\ B =/= suc y) <-> (B (_ suc y /\ -. B = suc y))
61 annim 238 . . . . . . . 8 |- ((B (_ suc y /\ -. B = suc y) <-> -. (B (_ suc y -> B = suc y))
6260, 61bitr 173 . . . . . . 7 |- ((B (_ suc y /\ B =/= suc y) <-> -. (B (_ suc y -> B = suc y))
6358, 62syl5ibr 207 . . . . . 6 |- ((y e. om /\ B e. om) -> (-. (B (_ suc y -> B = suc y) -> ((B (_ y -> ch) -> (B (_ suc y -> th))))
6442, 63pm2.61d 127 . . . . 5 |- ((y e. om /\ B e. om) -> ((B (_ y -> ch) -> (B (_ suc y -> th)))
6564ex 373 . . . 4 |- (y e. om -> (B e. om -> ((B (_ y -> ch) -> (B (_ suc y -> th))))
6665a2d 13 . . 3 |- (y e. om -> ((B e. om -> (B (_ y -> ch)) -> (B e. om -> (B (_ suc y -> th))))
6715, 19, 23, 27, 29, 66finds 3146 . 2 |- (A e. om -> (B e. om -> (B (_ A -> ta)))
6867imp31 362 1 |- (((A e. om /\ B e. om) /\ B (_ A) -> ta)
Colors of variables: wff set class
Syntax hints:  -. wn 2   -> wi 3   <-> wb 146   /\ wa 223   = wceq 953   e. wcel 955  E.wex 977   =/= wne 1577   (_ wss 2037  (/)c0 2270  Oncon0 2938  suc csuc 2940  omcom 3121
This theorem is referenced by:  inf3lem5 4589  indpi 5006
This theorem was proved from axioms:  ax-1 4  ax-2 5  ax-3 6  ax-mp 7  ax-7 959  ax-gen 960  ax-8 961  ax-9 962  ax-10 963  ax-11 964  ax-12 965  ax-13 966  ax-14 967  ax-17 968  ax-4 970  ax-5o 972  ax-6o 975  ax-9o 1119  ax-10o 1136  ax-16 1206  ax-11o 1213  ax-ext 1452  ax-sep 2693  ax-nul 2700  ax-pow 2732  ax-pr 2769  ax-un 2857
This theorem depends on definitions:  df-bi 147  df-or 224  df-an 225  df-3or 774  df-3an 775  df-ex 978  df-sb 1168  df-eu 1375  df-mo 1376  df-clab 1457  df-cleq 1462  df-clel 1465  df-ne 1579  df-ral 1641  df-rex 1642  df-v 1803  df-dif 2039  df-un 2040  df-in 2041  df-ss 2043  df-nul 2271  df-if 2352  df-pw 2392  df-sn 2402  df-pr 2403  df-tp 2405  df-op 2406  df-uni 2494  df-br 2610  df-opab 2657  df-tr 2671  df-eprel 2821  df-po 2831  df-so 2841  df-fr 2907  df-we 2924  df-ord 2941  df-on 2942  df-lim 2943  df-suc 2944  df-om 3122
Copyright terms: Public domain