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

Theorem findsg 3157
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 2083 . . . . . . 7 |- (x = (/) -> (B (_ x <-> B (_ (/)))
21adantl 388 . . . . . 6 |- ((B = (/) /\ x = (/)) -> (B (_ x <-> B (_ (/)))
3 eqeq2 1484 . . . . . . . 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 626 . . . . 5 |- ((B = (/) /\ x = (/)) -> ((B (_ x -> ph) <-> (B (_ (/) -> ps)))
81imbi1d 613 . . . . . 6 |- (x = (/) -> ((B (_ x -> ph) <-> (B (_ (/) -> ph)))
9 ss0 2303 . . . . . . . . 9 |- (B (_ (/) -> B = (/))
109con3i 98 . . . . . . . 8 |- (-. B = (/) -> -. B (_ (/))
1110pm2.21d 78 . . . . . . 7 |- (-. B = (/) -> (B (_ (/) -> (ph <-> ps)))
1211pm5.74d 585 . . . . . 6 |- (-. B = (/) -> ((B (_ (/) -> ph) <-> (B (_ (/) -> ps)))
138, 12sylan9bbr 541 . . . . 5 |- ((-. B = (/) /\ x = (/)) -> ((B (_ x -> ph) <-> (B (_ (/) -> ps)))
147, 13pm2.61ian 476 . . . 4 |- (x = (/) -> ((B (_ x -> ph) <-> (B (_ (/) -> ps)))
1514imbi2d 612 . . 3 |- (x = (/) -> ((B e. om -> (B (_ x -> ph)) <-> (B e. om -> (B (_ (/) -> ps))))
16 sseq2 2083 . . . . 5 |- (x = y -> (B (_ x <-> B (_ y))
17 findsg.2 . . . . 5 |- (x = y -> (ph <-> ch))
1816, 17imbi12d 626 . . . 4 |- (x = y -> ((B (_ x -> ph) <-> (B (_ y -> ch)))
1918imbi2d 612 . . 3 |- (x = y -> ((B e. om -> (B (_ x -> ph)) <-> (B e. om -> (B (_ y -> ch))))
20 sseq2 2083 . . . . 5 |- (x = suc y -> (B (_ x <-> B (_ suc y))
21 findsg.3 . . . . 5 |- (x = suc y -> (ph <-> th))
2220, 21imbi12d 626 . . . 4 |- (x = suc y -> ((B (_ x -> ph) <-> (B (_ suc y -> th)))
2322imbi2d 612 . . 3 |- (x = suc y -> ((B e. om -> (B (_ x -> ph)) <-> (B e. om -> (B (_ suc y -> th))))
24 sseq2 2083 . . . . 5 |- (x = A -> (B (_ x <-> B (_ A))
25 findsg.4 . . . . 5 |- (x = A -> (ph <-> ta))
2624, 25imbi12d 626 . . . 4 |- (x = A -> ((B (_ x -> ph) <-> (B (_ A -> ta)))
2726imbi2d 612 . . 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 1813 . . . . . . . . . . . . . 14 |- y e. V
3130sucex 3050 . . . . . . . . . . . . 13 |- suc y e. V
3231eqvinc 1883 . . . . . . . . . . . 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 1295 . . . . . . . . . . . 12 |- (E.x(x = suc y /\ x = B) -> (B e. om -> th))
3732, 36sylbi 199 . . . . . . . . . . 11 |- (suc y = B -> (B e. om -> th))
3837eqcoms 1478 . . . . . . . . . 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 3058 . . . . . . . . . . 11 |- ((B e. On /\ y e. On) -> (B (_ y <-> B e. suc y))
44 onelpsst 2998 . . . . . . . . . . . 12 |- ((B e. On /\ suc y e. On) -> (B e. suc y <-> (B (_ suc y /\ B =/= suc y)))
45 suceloni 3062 . . . . . . . . . . . 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 528 . . . . . . . . . 10 |- ((B e. On /\ y e. On) -> (B (_ y <-> (B (_ suc y /\ B =/= suc y)))
48 nnont 3138 . . . . . . . . . 10 |- (B e. om -> B e. On)
49 nnont 3138 . . . . . . . . . 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 1587 . . . . . . . . 9 |- (B =/= suc y <-> -. B = suc y)
6059anbi2i 480 . . . . . . . 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 3156 . 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 956   e. wcel 958  E.wex 980   =/= wne 1585   (_ wss 2047  (/)c0 2280  Oncon0 2948  suc csuc 2950  omcom 3131
This theorem is referenced by:  inf3lem5 4617  indpi 5034
This theorem was proved from axioms:  ax-1 4  ax-2 5  ax-3 6  ax-mp 7  ax-7 962  ax-gen 963  ax-8 964  ax-9 965  ax-10 966  ax-11 967  ax-12 968  ax-13 969  ax-14 970  ax-17 971  ax-4 973  ax-5o 975  ax-6o 978  ax-9o 1123  ax-10o 1140  ax-16 1210  ax-11o 1218  ax-ext 1459  ax-sep 2703  ax-nul 2710  ax-pow 2742  ax-pr 2779  ax-un 2866
This theorem depends on definitions:  df-bi 147  df-or 224  df-an 225  df-3or 776  df-3an 777  df-ex 981  df-sb 1172  df-eu 1382  df-mo 1383  df-clab 1464  df-cleq 1469  df-clel 1472  df-ne 1587  df-ral 1649  df-rex 1650  df-v 1812  df-dif 2049  df-un 2050  df-in 2051  df-ss 2053  df-nul 2281  df-if 2362  df-pw 2402  df-sn 2412  df-pr 2413  df-tp 2415  df-op 2416  df-uni 2504  df-br 2620  df-opab 2667  df-tr 2681  df-eprel 2832  df-po 2840  df-so 2850  df-fr 2917  df-we 2934  df-ord 2951  df-on 2952  df-lim 2953  df-suc 2954  df-om 3132
Copyright terms: Public domain