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

Theorem findcard3 7309
Description: Schema for strong induction on the cardinality of a finite set. The inductive hypothesis is that the result is true on any proper subset. The result is then proven to be true for all finite sets. (Contributed by Mario Carneiro, 13-Dec-2013.)
Hypotheses
Ref Expression
findcard3.1  |-  ( x  =  y  ->  ( ph 
<->  ch ) )
findcard3.2  |-  ( x  =  A  ->  ( ph 
<->  ta ) )
findcard3.3  |-  ( y  e.  Fin  ->  ( A. x ( x  C.  y  ->  ph )  ->  ch ) )
Assertion
Ref Expression
findcard3  |-  ( A  e.  Fin  ->  ta )
Distinct variable groups:    x, y    ph, y    x, A    ta, x    ch, x
Allowed substitution hints:    ph( x)    ch( y)    ta( y)    A( y)

Proof of Theorem findcard3
Dummy variables  w  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 isfi 7090 . . 3  |-  ( A  e.  Fin  <->  E. w  e.  om  A  ~~  w
)
2 nnon 4810 . . . . . 6  |-  ( w  e.  om  ->  w  e.  On )
3 eleq1 2464 . . . . . . . 8  |-  ( w  =  z  ->  (
w  e.  om  <->  z  e.  om ) )
4 breq2 4176 . . . . . . . . . 10  |-  ( w  =  z  ->  (
x  ~~  w  <->  x  ~~  z ) )
54imbi1d 309 . . . . . . . . 9  |-  ( w  =  z  ->  (
( x  ~~  w  ->  ph )  <->  ( x  ~~  z  ->  ph )
) )
65albidv 1632 . . . . . . . 8  |-  ( w  =  z  ->  ( A. x ( x  ~~  w  ->  ph )  <->  A. x
( x  ~~  z  ->  ph ) ) )
73, 6imbi12d 312 . . . . . . 7  |-  ( w  =  z  ->  (
( w  e.  om  ->  A. x ( x 
~~  w  ->  ph )
)  <->  ( z  e. 
om  ->  A. x ( x 
~~  z  ->  ph )
) ) )
8 rspe 2727 . . . . . . . . . . . . . 14  |-  ( ( w  e.  om  /\  y  ~~  w )  ->  E. w  e.  om  y  ~~  w )
9 isfi 7090 . . . . . . . . . . . . . 14  |-  ( y  e.  Fin  <->  E. w  e.  om  y  ~~  w
)
108, 9sylibr 204 . . . . . . . . . . . . 13  |-  ( ( w  e.  om  /\  y  ~~  w )  -> 
y  e.  Fin )
11 19.21v 1909 . . . . . . . . . . . . . . . 16  |-  ( A. x ( z  e. 
om  ->  ( x  ~~  z  ->  ph ) )  <->  ( z  e.  om  ->  A. x
( x  ~~  z  ->  ph ) ) )
1211ralbii 2690 . . . . . . . . . . . . . . 15  |-  ( A. z  e.  w  A. x ( z  e. 
om  ->  ( x  ~~  z  ->  ph ) )  <->  A. z  e.  w  ( z  e.  om  ->  A. x
( x  ~~  z  ->  ph ) ) )
13 ralcom4 2934 . . . . . . . . . . . . . . 15  |-  ( A. z  e.  w  A. x ( z  e. 
om  ->  ( x  ~~  z  ->  ph ) )  <->  A. x A. z  e.  w  ( z  e.  om  ->  ( x  ~~  z  ->  ph ) ) )
1412, 13bitr3i 243 . . . . . . . . . . . . . 14  |-  ( A. z  e.  w  (
z  e.  om  ->  A. x ( x  ~~  z  ->  ph ) )  <->  A. x A. z  e.  w  ( z  e.  om  ->  ( x  ~~  z  ->  ph ) ) )
15 pssss 3402 . . . . . . . . . . . . . . . . . . . . 21  |-  ( x 
C.  y  ->  x  C_  y )
16 ssfi 7288 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( y  e.  Fin  /\  x  C_  y )  ->  x  e.  Fin )
17 isfi 7090 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( x  e.  Fin  <->  E. z  e.  om  x  ~~  z
)
1816, 17sylib 189 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( y  e.  Fin  /\  x  C_  y )  ->  E. z  e.  om  x  ~~  z )
1910, 15, 18syl2an 464 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  E. z  e.  om  x  ~~  z
)
20 ensym 7115 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( x 
~~  z  ->  z  ~~  x )
2120ad2antll 710 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  z  ~~  x
)
22 php3 7252 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( ( y  e.  Fin  /\  x  C.  y )  ->  x  ~<  y )
2310, 22sylan 458 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  x  ~<  y )
2423adantr 452 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  x  ~<  y
)
25 simpllr 736 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  y  ~~  w
)
26 sdomentr 7200 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( x  ~<  y  /\  y  ~~  w )  ->  x  ~<  w )
2724, 25, 26syl2anc 643 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  x  ~<  w
)
28 ensdomtr 7202 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( z  ~~  x  /\  x  ~<  w )  -> 
z  ~<  w )
2921, 27, 28syl2anc 643 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  z  ~<  w
)
30 nnon 4810 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( z  e.  om  ->  z  e.  On )
3130ad2antrl 709 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  z  e.  On )
322ad3antrrr 711 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  w  e.  On )
33 sdomel 7213 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( z  e.  On  /\  w  e.  On )  ->  ( z  ~<  w  ->  z  e.  w ) )
3431, 32, 33syl2anc 643 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  ( z  ~<  w  ->  z  e.  w
) )
3529, 34mpd 15 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  z  e.  w
)
3635ex 424 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  ( (
z  e.  om  /\  x  ~~  z )  -> 
z  e.  w ) )
37 simpr 448 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( z  e.  om  /\  x  ~~  z )  ->  x  ~~  z )
3837a1i 11 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  ( (
z  e.  om  /\  x  ~~  z )  ->  x  ~~  z ) )
3936, 38jcad 520 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  ( (
z  e.  om  /\  x  ~~  z )  -> 
( z  e.  w  /\  x  ~~  z ) ) )
4039reximdv2 2775 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  ( E. z  e.  om  x  ~~  z  ->  E. z  e.  w  x  ~~  z ) )
4119, 40mpd 15 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  E. z  e.  w  x  ~~  z )
42 r19.29 2806 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( A. z  e.  w  ( z  e.  om  ->  ( x  ~~  z  ->  ph ) )  /\  E. z  e.  w  x 
~~  z )  ->  E. z  e.  w  ( ( z  e. 
om  ->  ( x  ~~  z  ->  ph ) )  /\  x  ~~  z ) )
4342expcom 425 . . . . . . . . . . . . . . . . . . 19  |-  ( E. z  e.  w  x 
~~  z  ->  ( A. z  e.  w  ( z  e.  om  ->  ( x  ~~  z  ->  ph ) )  ->  E. z  e.  w  ( ( z  e. 
om  ->  ( x  ~~  z  ->  ph ) )  /\  x  ~~  z ) ) )
4441, 43syl 16 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  ( A. z  e.  w  (
z  e.  om  ->  ( x  ~~  z  ->  ph ) )  ->  E. z  e.  w  ( (
z  e.  om  ->  ( x  ~~  z  ->  ph ) )  /\  x  ~~  z ) ) )
45 ordom 4813 . . . . . . . . . . . . . . . . . . . . . . 23  |-  Ord  om
46 ordelss 4557 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( Ord  om  /\  w  e.  om )  ->  w  C_ 
om )
4745, 46mpan 652 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( w  e.  om  ->  w  C_ 
om )
4847ad2antrr 707 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  w  C_  om )
4948sseld 3307 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  ( z  e.  w  ->  z  e. 
om ) )
50 pm2.27 37 . . . . . . . . . . . . . . . . . . . . 21  |-  ( z  e.  om  ->  (
( z  e.  om  ->  ( x  ~~  z  ->  ph ) )  -> 
( x  ~~  z  ->  ph ) ) )
5150imp3a 421 . . . . . . . . . . . . . . . . . . . 20  |-  ( z  e.  om  ->  (
( ( z  e. 
om  ->  ( x  ~~  z  ->  ph ) )  /\  x  ~~  z )  ->  ph ) )
5249, 51syl6 31 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  ( z  e.  w  ->  ( ( ( z  e.  om  ->  ( x  ~~  z  ->  ph ) )  /\  x  ~~  z )  ->  ph ) ) )
5352rexlimdv 2789 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  ( E. z  e.  w  (
( z  e.  om  ->  ( x  ~~  z  ->  ph ) )  /\  x  ~~  z )  ->  ph ) )
5444, 53syld 42 . . . . . . . . . . . . . . . . 17  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  ( A. z  e.  w  (
z  e.  om  ->  ( x  ~~  z  ->  ph ) )  ->  ph )
)
5554ex 424 . . . . . . . . . . . . . . . 16  |-  ( ( w  e.  om  /\  y  ~~  w )  -> 
( x  C.  y  ->  ( A. z  e.  w  ( z  e. 
om  ->  ( x  ~~  z  ->  ph ) )  ->  ph ) ) )
5655com23 74 . . . . . . . . . . . . . . 15  |-  ( ( w  e.  om  /\  y  ~~  w )  -> 
( A. z  e.  w  ( z  e. 
om  ->  ( x  ~~  z  ->  ph ) )  -> 
( x  C.  y  ->  ph ) ) )
5756alimdv 1628 . . . . . . . . . . . . . 14  |-  ( ( w  e.  om  /\  y  ~~  w )  -> 
( A. x A. z  e.  w  (
z  e.  om  ->  ( x  ~~  z  ->  ph ) )  ->  A. x
( x  C.  y  ->  ph ) ) )
5814, 57syl5bi 209 . . . . . . . . . . . . 13  |-  ( ( w  e.  om  /\  y  ~~  w )  -> 
( A. z  e.  w  ( z  e. 
om  ->  A. x ( x 
~~  z  ->  ph )
)  ->  A. x
( x  C.  y  ->  ph ) ) )
59 findcard3.3 . . . . . . . . . . . . 13  |-  ( y  e.  Fin  ->  ( A. x ( x  C.  y  ->  ph )  ->  ch ) )
6010, 58, 59sylsyld 54 . . . . . . . . . . . 12  |-  ( ( w  e.  om  /\  y  ~~  w )  -> 
( A. z  e.  w  ( z  e. 
om  ->  A. x ( x 
~~  z  ->  ph )
)  ->  ch )
)
6160impancom 428 . . . . . . . . . . 11  |-  ( ( w  e.  om  /\  A. z  e.  w  ( z  e.  om  ->  A. x ( x  ~~  z  ->  ph ) ) )  ->  ( y  ~~  w  ->  ch ) )
6261alrimiv 1638 . . . . . . . . . 10  |-  ( ( w  e.  om  /\  A. z  e.  w  ( z  e.  om  ->  A. x ( x  ~~  z  ->  ph ) ) )  ->  A. y ( y 
~~  w  ->  ch ) )
6362expcom 425 . . . . . . . . 9  |-  ( A. z  e.  w  (
z  e.  om  ->  A. x ( x  ~~  z  ->  ph ) )  -> 
( w  e.  om  ->  A. y ( y 
~~  w  ->  ch ) ) )
64 breq1 4175 . . . . . . . . . . 11  |-  ( x  =  y  ->  (
x  ~~  w  <->  y  ~~  w ) )
65 findcard3.1 . . . . . . . . . . 11  |-  ( x  =  y  ->  ( ph 
<->  ch ) )
6664, 65imbi12d 312 . . . . . . . . . 10  |-  ( x  =  y  ->  (
( x  ~~  w  ->  ph )  <->  ( y  ~~  w  ->  ch )
) )
6766cbvalv 2052 . . . . . . . . 9  |-  ( A. x ( x  ~~  w  ->  ph )  <->  A. y
( y  ~~  w  ->  ch ) )
6863, 67syl6ibr 219 . . . . . . . 8  |-  ( A. z  e.  w  (
z  e.  om  ->  A. x ( x  ~~  z  ->  ph ) )  -> 
( w  e.  om  ->  A. x ( x 
~~  w  ->  ph )
) )
6968a1i 11 . . . . . . 7  |-  ( w  e.  On  ->  ( A. z  e.  w  ( z  e.  om  ->  A. x ( x 
~~  z  ->  ph )
)  ->  ( w  e.  om  ->  A. x
( x  ~~  w  ->  ph ) ) ) )
707, 69tfis2 4795 . . . . . 6  |-  ( w  e.  On  ->  (
w  e.  om  ->  A. x ( x  ~~  w  ->  ph ) ) )
712, 70mpcom 34 . . . . 5  |-  ( w  e.  om  ->  A. x
( x  ~~  w  ->  ph ) )
7271rgen 2731 . . . 4  |-  A. w  e.  om  A. x ( x  ~~  w  ->  ph )
73 r19.29 2806 . . . 4  |-  ( ( A. w  e.  om  A. x ( x  ~~  w  ->  ph )  /\  E. w  e.  om  A  ~~  w )  ->  E. w  e.  om  ( A. x
( x  ~~  w  ->  ph )  /\  A  ~~  w ) )
7472, 73mpan 652 . . 3  |-  ( E. w  e.  om  A  ~~  w  ->  E. w  e.  om  ( A. x
( x  ~~  w  ->  ph )  /\  A  ~~  w ) )
751, 74sylbi 188 . 2  |-  ( A  e.  Fin  ->  E. w  e.  om  ( A. x
( x  ~~  w  ->  ph )  /\  A  ~~  w ) )
76 breq1 4175 . . . . . 6  |-  ( x  =  A  ->  (
x  ~~  w  <->  A  ~~  w ) )
77 findcard3.2 . . . . . 6  |-  ( x  =  A  ->  ( ph 
<->  ta ) )
7876, 77imbi12d 312 . . . . 5  |-  ( x  =  A  ->  (
( x  ~~  w  ->  ph )  <->  ( A  ~~  w  ->  ta )
) )
7978spcgv 2996 . . . 4  |-  ( A  e.  Fin  ->  ( A. x ( x  ~~  w  ->  ph )  ->  ( A  ~~  w  ->  ta ) ) )
8079imp3a 421 . . 3  |-  ( A  e.  Fin  ->  (
( A. x ( x  ~~  w  ->  ph )  /\  A  ~~  w )  ->  ta ) )
8180rexlimdvw 2793 . 2  |-  ( A  e.  Fin  ->  ( E. w  e.  om  ( A. x ( x 
~~  w  ->  ph )  /\  A  ~~  w )  ->  ta ) )
8275, 81mpd 15 1  |-  ( A  e.  Fin  ->  ta )
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 177    /\ wa 359   A.wal 1546    = wceq 1649    e. wcel 1721   A.wral 2666   E.wrex 2667    C_ wss 3280    C. wpss 3281   class class class wbr 4172   Ord word 4540   Oncon0 4541   omcom 4804    ~~ cen 7065    ~< csdm 7067   Fincfn 7068
This theorem is referenced by:  marypha1lem  7396  pgpfac1  15593  pgpfac  15597  fbfinnfr  17826  wilthlem3  20806
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1552  ax-5 1563  ax-17 1623  ax-9 1662  ax-8 1683  ax-13 1723  ax-14 1725  ax-6 1740  ax-7 1745  ax-11 1757  ax-12 1946  ax-ext 2385  ax-sep 4290  ax-nul 4298  ax-pow 4337  ax-pr 4363  ax-un 4660
This theorem depends on definitions:  df-bi 178  df-or 360  df-an 361  df-3or 937  df-3an 938  df-tru 1325  df-ex 1548  df-nf 1551  df-sb 1656  df-eu 2258  df-mo 2259  df-clab 2391  df-cleq 2397  df-clel 2400  df-nfc 2529  df-ne 2569  df-ral 2671  df-rex 2672  df-rab 2675  df-v 2918  df-sbc 3122  df-dif 3283  df-un 3285  df-in 3287  df-ss 3294  df-pss 3296  df-nul 3589  df-if 3700  df-pw 3761  df-sn 3780  df-pr 3781  df-tp 3782  df-op 3783  df-uni 3976  df-br 4173  df-opab 4227  df-tr 4263  df-eprel 4454  df-id 4458  df-po 4463  df-so 4464  df-fr 4501  df-we 4503  df-ord 4544  df-on 4545  df-lim 4546  df-suc 4547  df-om 4805  df-xp 4843  df-rel 4844  df-cnv 4845  df-co 4846  df-dm 4847  df-rn 4848  df-res 4849  df-ima 4850  df-iota 5377  df-fun 5415  df-fn 5416  df-f 5417  df-f1 5418  df-fo 5419  df-f1o 5420  df-fv 5421  df-er 6864  df-en 7069  df-dom 7070  df-sdom 7071  df-fin 7072
  Copyright terms: Public domain W3C validator