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

Theorem findsg 3152
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 2079 . . . . . . 7 |- (x = (/) -> (B (_ x <-> B (_ (/)))
21adantl 388 . . . . . 6 |- ((B = (/) /\ x = (/)) -> (B (_ x <-> B (_ (/)))
3 eqeq2 1481 . . . . . . . 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 625 . . . . 5 |- ((B = (/) /\ x = (/)) -> ((B (_ x -> ph) <-> (B (_ (/) -> ps)))
81imbi1d 612 . . . . . 6 |- (x = (/) -> ((B (_ x -> ph) <-> (B (_ (/) -> ph)))
9 ss0 2299 . . . . . . . . 9 |- (B (_ (/) -> B = (/))
109con3i 98 . . . . . . . 8 |- (-. B = (/) -> -. B (_ (/))
1110pm2.21d 78 . . . . . . 7 |- (-. B = (/) -> (B (_ (/) -> (ph <-> ps)))
1211pm5.74d 584 . . . . . 6 |- (-. B = (/) -> ((B (_ (/) -> ph) <-> (B (_ (/) -> ps)))
138, 12sylan9bbr 540 . . . . 5 |- ((-. B = (/) /\ x = (/)) -> ((B (_ x -> ph) <-> (B (_ (/) -> ps)))
147, 13pm2.61ian 476 . . . 4 |- (x = (/) -> ((B (_ x -> ph) <-> (B (_ (/) -> ps)))
1514imbi2d 611 . . 3 |- (x = (/) -> ((B e. om -> (B (_ x -> ph)) <-> (B e. om -> (B (_ (/) -> ps))))
16 sseq2 2079 . . . . 5 |- (x = y -> (B (_ x <-> B (_ y))
17 findsg.2 . . . . 5 |- (x = y -> (ph <-> ch))
1816, 17imbi12d 625 . . . 4 |- (x = y -> ((B (_ x -> ph) <-> (B (_ y -> ch)))
1918imbi2d 611 . . 3 |- (x = y -> ((B e. om -> (B (_ x -> ph)) <-> (B e. om -> (B (_ y -> ch))))
20 sseq2 2079 . . . . 5 |- (x = suc y -> (B (_ x <-> B (_ suc y))
21 findsg.3 . . . . 5 |- (x = suc y -> (ph <-> th))
2220, 21imbi12d 625 . . . 4 |- (x = suc y -> ((B (_ x -> ph) <-> (B (_ suc y -> th)))
2322imbi2d 611 . . 3 |- (x = suc y -> ((B e. om -> (B (_ x -> ph)) <-> (B e. om -> (B (_ suc y -> th))))
24 sseq2 2079 . . . . 5 |- (x = A -> (B (_ x <-> B (_ A))
25 findsg.4 . . . . 5 |- (x = A -> (ph <-> ta))
2624, 25imbi12d 625 . . . 4 |- (x = A -> ((B (_ x -> ph) <-> (B (_ A -> ta)))
2726imbi2d 611 . . 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 1809 . . . . . . . . . . . . . 14 |- y e. V
3130sucex 3045 . . . . . . . . . . . . 13 |- suc y e. V
3231eqvinc 1879 . . . . . . . . . . . 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 1293 . . . . . . . . . . . 12 |- (E.x(x = suc y /\ x = B) -> (B e. om -> th))
3732, 36sylbi 199 . . . . . . . . . . 11 |- (suc y = B -> (B e. om -> th))
3837eqcoms 1475 . . . . . . . . . 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 3053 . . . . . . . . . . 11 |- ((B e. On /\ y e. On) -> (B (_ y <-> B e. suc y))
44 onelpsst 2993 . . . . . . . . . . . 12 |- ((B e. On /\ suc y e. On) -> (B e. suc y <-> (B (_ suc y /\ B =/= suc y)))
45 suceloni 3057 . . . . . . . . . . . 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 527 . . . . . . . . . 10 |- ((B e. On /\ y e. On) -> (B (_ y <-> (B (_ suc y /\ B =/= suc y)))
48 nnont 3133 . . . . . . . . . 10 |- (B e. om -> B e. On)
49 nnont 3133 . . . . . . . . . 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 1584 . . . . . . . . 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 3151 . 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 954   e. wcel 956  E.wex 978   =/= wne 1582   (_ wss 2043  (/)c0 2276  Oncon0 2943  suc csuc 2945  omcom 3126
This theorem is referenced by:  inf3lem5 4597  indpi 5014
This theorem was proved from axioms:  ax-1 4  ax-2 5  ax-3 6  ax-mp 7  ax-7 960  ax-gen 961  ax-8 962  ax-9 963  ax-10 964  ax-11 965  ax-12 966  ax-13 967  ax-14 968  ax-17 969  ax-4 971  ax-5o 973  ax-6o 976  ax-9o 1121  ax-10o 1138  ax-16 1208  ax-11o 1216  ax-ext 1457  ax-sep 2698  ax-nul 2705  ax-pow 2737  ax-pr 2774  ax-un 2861
This theorem depends on definitions:  df-bi 147  df-or 224  df-an 225  df-3or 775  df-3an 776  df-ex 979  df-sb 1170  df-eu 1380  df-mo 1381  df-clab 1462  df-cleq 1467  df-clel 1470  df-ne 1584  df-ral 1646  df-rex 1647  df-v 1808  df-dif 2045  df-un 2046  df-in 2047  df-ss 2049  df-nul 2277  df-if 2358  df-pw 2398  df-sn 2408  df-pr 2409  df-tp 2411  df-op 2412  df-uni 2499  df-br 2615  df-opab 2662  df-tr 2676  df-eprel 2827  df-po 2835  df-so 2845  df-fr 2912  df-we 2929  df-ord 2946  df-on 2947  df-lim 2948  df-suc 2949  df-om 3127
Copyright terms: Public domain