MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  findsg Structured version   Visualization version   Unicode version

Theorem findsg 7093
Description: Principle of Finite Induction (inference schema), using implicit substitutions. The first four hypotheses establish the substitutions we need. The last two are the basis and the induction step. The basis of this version is an arbitrary natural number  B instead of zero. (Contributed by NM, 16-Sep-1995.)
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  C_  y )  ->  ( ch  ->  th ) )
Assertion
Ref Expression
findsg  |-  ( ( ( A  e.  om  /\  B  e.  om )  /\  B  C_  A )  ->  ta )
Distinct variable groups:    x, A    x, y, B    ps, x    ch, x    th, x    ta, x    ph, y
Allowed substitution hints:    ph( x)    ps( y)    ch( y)    th( y)    ta( y)    A( y)

Proof of Theorem findsg
StepHypRef Expression
1 sseq2 3627 . . . . . . 7  |-  ( x  =  (/)  ->  ( B 
C_  x  <->  B  C_  (/) ) )
21adantl 482 . . . . . 6  |-  ( ( B  =  (/)  /\  x  =  (/) )  ->  ( B  C_  x  <->  B  C_  (/) ) )
3 eqeq2 2633 . . . . . . . 8  |-  ( B  =  (/)  ->  ( x  =  B  <->  x  =  (/) ) )
4 findsg.1 . . . . . . . 8  |-  ( x  =  B  ->  ( ph 
<->  ps ) )
53, 4syl6bir 244 . . . . . . 7  |-  ( B  =  (/)  ->  ( x  =  (/)  ->  ( ph  <->  ps ) ) )
65imp 445 . . . . . 6  |-  ( ( B  =  (/)  /\  x  =  (/) )  ->  ( ph 
<->  ps ) )
72, 6imbi12d 334 . . . . 5  |-  ( ( B  =  (/)  /\  x  =  (/) )  ->  (
( B  C_  x  ->  ph )  <->  ( B  C_  (/)  ->  ps ) ) )
81imbi1d 331 . . . . . 6  |-  ( x  =  (/)  ->  ( ( B  C_  x  ->  ph )  <->  ( B  C_  (/) 
->  ph ) ) )
9 ss0 3974 . . . . . . . . 9  |-  ( B 
C_  (/)  ->  B  =  (/) )
109con3i 150 . . . . . . . 8  |-  ( -.  B  =  (/)  ->  -.  B  C_  (/) )
1110pm2.21d 118 . . . . . . 7  |-  ( -.  B  =  (/)  ->  ( B  C_  (/)  ->  ( ph  <->  ps ) ) )
1211pm5.74d 262 . . . . . 6  |-  ( -.  B  =  (/)  ->  (
( B  C_  (/)  ->  ph )  <->  ( B  C_  (/)  ->  ps ) ) )
138, 12sylan9bbr 737 . . . . 5  |-  ( ( -.  B  =  (/)  /\  x  =  (/) )  -> 
( ( B  C_  x  ->  ph )  <->  ( B  C_  (/)  ->  ps ) ) )
147, 13pm2.61ian 831 . . . 4  |-  ( x  =  (/)  ->  ( ( B  C_  x  ->  ph )  <->  ( B  C_  (/) 
->  ps ) ) )
1514imbi2d 330 . . 3  |-  ( x  =  (/)  ->  ( ( B  e.  om  ->  ( B  C_  x  ->  ph ) )  <->  ( B  e.  om  ->  ( B  C_  (/)  ->  ps ) ) ) )
16 sseq2 3627 . . . . 5  |-  ( x  =  y  ->  ( B  C_  x  <->  B  C_  y
) )
17 findsg.2 . . . . 5  |-  ( x  =  y  ->  ( ph 
<->  ch ) )
1816, 17imbi12d 334 . . . 4  |-  ( x  =  y  ->  (
( B  C_  x  ->  ph )  <->  ( B  C_  y  ->  ch )
) )
1918imbi2d 330 . . 3  |-  ( x  =  y  ->  (
( B  e.  om  ->  ( B  C_  x  ->  ph ) )  <->  ( B  e.  om  ->  ( B  C_  y  ->  ch )
) ) )
20 sseq2 3627 . . . . 5  |-  ( x  =  suc  y  -> 
( B  C_  x  <->  B 
C_  suc  y )
)
21 findsg.3 . . . . 5  |-  ( x  =  suc  y  -> 
( ph  <->  th ) )
2220, 21imbi12d 334 . . . 4  |-  ( x  =  suc  y  -> 
( ( B  C_  x  ->  ph )  <->  ( B  C_ 
suc  y  ->  th )
) )
2322imbi2d 330 . . 3  |-  ( x  =  suc  y  -> 
( ( B  e. 
om  ->  ( B  C_  x  ->  ph ) )  <->  ( B  e.  om  ->  ( B  C_ 
suc  y  ->  th )
) ) )
24 sseq2 3627 . . . . 5  |-  ( x  =  A  ->  ( B  C_  x  <->  B  C_  A
) )
25 findsg.4 . . . . 5  |-  ( x  =  A  ->  ( ph 
<->  ta ) )
2624, 25imbi12d 334 . . . 4  |-  ( x  =  A  ->  (
( B  C_  x  ->  ph )  <->  ( B  C_  A  ->  ta )
) )
2726imbi2d 330 . . 3  |-  ( x  =  A  ->  (
( B  e.  om  ->  ( B  C_  x  ->  ph ) )  <->  ( B  e.  om  ->  ( B  C_  A  ->  ta )
) ) )
28 findsg.5 . . . 4  |-  ( B  e.  om  ->  ps )
2928a1d 25 . . 3  |-  ( B  e.  om  ->  ( B  C_  (/)  ->  ps )
)
30 vex 3203 . . . . . . . . . . . . . 14  |-  y  e. 
_V
3130sucex 7011 . . . . . . . . . . . . 13  |-  suc  y  e.  _V
3231eqvinc 3330 . . . . . . . . . . . 12  |-  ( suc  y  =  B  <->  E. x
( x  =  suc  y  /\  x  =  B ) )
3328, 4syl5ibr 236 . . . . . . . . . . . . . 14  |-  ( x  =  B  ->  ( B  e.  om  ->  ph ) )
3421biimpd 219 . . . . . . . . . . . . . 14  |-  ( x  =  suc  y  -> 
( ph  ->  th )
)
3533, 34sylan9r 690 . . . . . . . . . . . . 13  |-  ( ( x  =  suc  y  /\  x  =  B
)  ->  ( B  e.  om  ->  th )
)
3635exlimiv 1858 . . . . . . . . . . . 12  |-  ( E. x ( x  =  suc  y  /\  x  =  B )  ->  ( B  e.  om  ->  th ) )
3732, 36sylbi 207 . . . . . . . . . . 11  |-  ( suc  y  =  B  -> 
( B  e.  om  ->  th ) )
3837eqcoms 2630 . . . . . . . . . 10  |-  ( B  =  suc  y  -> 
( B  e.  om  ->  th ) )
3938imim2i 16 . . . . . . . . 9  |-  ( ( B  C_  suc  y  ->  B  =  suc  y )  ->  ( B  C_  suc  y  ->  ( B  e.  om  ->  th )
) )
4039a1d 25 . . . . . . . 8  |-  ( ( B  C_  suc  y  ->  B  =  suc  y )  ->  ( ( B 
C_  y  ->  ch )  ->  ( B  C_  suc  y  ->  ( B  e.  om  ->  th )
) ) )
4140com4r 94 . . . . . . 7  |-  ( B  e.  om  ->  (
( B  C_  suc  y  ->  B  =  suc  y )  ->  (
( B  C_  y  ->  ch )  ->  ( B  C_  suc  y  ->  th ) ) ) )
4241adantl 482 . . . . . 6  |-  ( ( y  e.  om  /\  B  e.  om )  ->  ( ( B  C_  suc  y  ->  B  =  suc  y )  -> 
( ( B  C_  y  ->  ch )  -> 
( B  C_  suc  y  ->  th ) ) ) )
43 df-ne 2795 . . . . . . . . 9  |-  ( B  =/=  suc  y  <->  -.  B  =  suc  y )
4443anbi2i 730 . . . . . . . 8  |-  ( ( B  C_  suc  y  /\  B  =/=  suc  y )  <->  ( B  C_  suc  y  /\  -.  B  =  suc  y ) )
45 annim 441 . . . . . . . 8  |-  ( ( B  C_  suc  y  /\  -.  B  =  suc  y )  <->  -.  ( B  C_  suc  y  ->  B  =  suc  y ) )
4644, 45bitri 264 . . . . . . 7  |-  ( ( B  C_  suc  y  /\  B  =/=  suc  y )  <->  -.  ( B  C_  suc  y  ->  B  =  suc  y ) )
47 nnon 7071 . . . . . . . . 9  |-  ( B  e.  om  ->  B  e.  On )
48 nnon 7071 . . . . . . . . 9  |-  ( y  e.  om  ->  y  e.  On )
49 onsssuc 5813 . . . . . . . . . 10  |-  ( ( B  e.  On  /\  y  e.  On )  ->  ( B  C_  y  <->  B  e.  suc  y ) )
50 suceloni 7013 . . . . . . . . . . 11  |-  ( y  e.  On  ->  suc  y  e.  On )
51 onelpss 5764 . . . . . . . . . . 11  |-  ( ( B  e.  On  /\  suc  y  e.  On )  ->  ( B  e. 
suc  y  <->  ( B  C_ 
suc  y  /\  B  =/=  suc  y ) ) )
5250, 51sylan2 491 . . . . . . . . . 10  |-  ( ( B  e.  On  /\  y  e.  On )  ->  ( B  e.  suc  y 
<->  ( B  C_  suc  y  /\  B  =/=  suc  y ) ) )
5349, 52bitrd 268 . . . . . . . . 9  |-  ( ( B  e.  On  /\  y  e.  On )  ->  ( B  C_  y  <->  ( B  C_  suc  y  /\  B  =/=  suc  y )
) )
5447, 48, 53syl2anr 495 . . . . . . . 8  |-  ( ( y  e.  om  /\  B  e.  om )  ->  ( B  C_  y  <->  ( B  C_  suc  y  /\  B  =/=  suc  y )
) )
55 findsg.6 . . . . . . . . . . . 12  |-  ( ( ( y  e.  om  /\  B  e.  om )  /\  B  C_  y )  ->  ( ch  ->  th ) )
5655ex 450 . . . . . . . . . . 11  |-  ( ( y  e.  om  /\  B  e.  om )  ->  ( B  C_  y  ->  ( ch  ->  th )
) )
57 ax-1 6 . . . . . . . . . . 11  |-  ( th 
->  ( B  C_  suc  y  ->  th ) )
5856, 57syl8 76 . . . . . . . . . 10  |-  ( ( y  e.  om  /\  B  e.  om )  ->  ( B  C_  y  ->  ( ch  ->  ( B  C_  suc  y  ->  th ) ) ) )
5958a2d 29 . . . . . . . . 9  |-  ( ( y  e.  om  /\  B  e.  om )  ->  ( ( B  C_  y  ->  ch )  -> 
( B  C_  y  ->  ( B  C_  suc  y  ->  th ) ) ) )
6059com23 86 . . . . . . . 8  |-  ( ( y  e.  om  /\  B  e.  om )  ->  ( B  C_  y  ->  ( ( B  C_  y  ->  ch )  -> 
( B  C_  suc  y  ->  th ) ) ) )
6154, 60sylbird 250 . . . . . . 7  |-  ( ( y  e.  om  /\  B  e.  om )  ->  ( ( B  C_  suc  y  /\  B  =/= 
suc  y )  -> 
( ( B  C_  y  ->  ch )  -> 
( B  C_  suc  y  ->  th ) ) ) )
6246, 61syl5bir 233 . . . . . 6  |-  ( ( y  e.  om  /\  B  e.  om )  ->  ( -.  ( B 
C_  suc  y  ->  B  =  suc  y )  ->  ( ( B 
C_  y  ->  ch )  ->  ( B  C_  suc  y  ->  th )
) ) )
6342, 62pm2.61d 170 . . . . 5  |-  ( ( y  e.  om  /\  B  e.  om )  ->  ( ( B  C_  y  ->  ch )  -> 
( B  C_  suc  y  ->  th ) ) )
6463ex 450 . . . 4  |-  ( y  e.  om  ->  ( B  e.  om  ->  ( ( B  C_  y  ->  ch )  ->  ( B  C_  suc  y  ->  th ) ) ) )
6564a2d 29 . . 3  |-  ( y  e.  om  ->  (
( B  e.  om  ->  ( B  C_  y  ->  ch ) )  -> 
( B  e.  om  ->  ( B  C_  suc  y  ->  th ) ) ) )
6615, 19, 23, 27, 29, 65finds 7092 . 2  |-  ( A  e.  om  ->  ( B  e.  om  ->  ( B  C_  A  ->  ta ) ) )
6766imp31 448 1  |-  ( ( ( A  e.  om  /\  B  e.  om )  /\  B  C_  A )  ->  ta )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 196    /\ wa 384    = wceq 1483   E.wex 1704    e. wcel 1990    =/= wne 2794    C_ wss 3574   (/)c0 3915   Oncon0 5723   suc csuc 5725   omcom 7065
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-8 1992  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602  ax-sep 4781  ax-nul 4789  ax-pr 4906  ax-un 6949
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1038  df-3an 1039  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-eu 2474  df-mo 2475  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-ne 2795  df-ral 2917  df-rex 2918  df-rab 2921  df-v 3202  df-sbc 3436  df-dif 3577  df-un 3579  df-in 3581  df-ss 3588  df-pss 3590  df-nul 3916  df-if 4087  df-pw 4160  df-sn 4178  df-pr 4180  df-tp 4182  df-op 4184  df-uni 4437  df-br 4654  df-opab 4713  df-tr 4753  df-eprel 5029  df-po 5035  df-so 5036  df-fr 5073  df-we 5075  df-ord 5726  df-on 5727  df-lim 5728  df-suc 5729  df-om 7066
This theorem is referenced by:  nnaordi  7698  inf3lem5  8529  ackbij2lem4  9064  sornom  9099  fin23lem15  9156  fin23lem36  9170  isf32lem1  9175  isf32lem2  9176  wunex2  9560  indpi  9729
  Copyright terms: Public domain W3C validator