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

Theorem findcard3 7100
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 6885 . . 3  |-  ( A  e.  Fin  <->  E. w  e.  om  A  ~~  w
)
2 nnon 4662 . . . . . 6  |-  ( w  e.  om  ->  w  e.  On )
3 eleq1 2343 . . . . . . . 8  |-  ( w  =  z  ->  (
w  e.  om  <->  z  e.  om ) )
4 breq2 4027 . . . . . . . . . 10  |-  ( w  =  z  ->  (
x  ~~  w  <->  x  ~~  z ) )
54imbi1d 308 . . . . . . . . 9  |-  ( w  =  z  ->  (
( x  ~~  w  ->  ph )  <->  ( x  ~~  z  ->  ph )
) )
65albidv 1611 . . . . . . . 8  |-  ( w  =  z  ->  ( A. x ( x  ~~  w  ->  ph )  <->  A. x
( x  ~~  z  ->  ph ) ) )
73, 6imbi12d 311 . . . . . . 7  |-  ( w  =  z  ->  (
( w  e.  om  ->  A. x ( x 
~~  w  ->  ph )
)  <->  ( z  e. 
om  ->  A. x ( x 
~~  z  ->  ph )
) ) )
8 rspe 2604 . . . . . . . . . . . . . 14  |-  ( ( w  e.  om  /\  y  ~~  w )  ->  E. w  e.  om  y  ~~  w )
9 isfi 6885 . . . . . . . . . . . . . 14  |-  ( y  e.  Fin  <->  E. w  e.  om  y  ~~  w
)
108, 9sylibr 203 . . . . . . . . . . . . 13  |-  ( ( w  e.  om  /\  y  ~~  w )  -> 
y  e.  Fin )
11 19.21v 1831 . . . . . . . . . . . . . . . 16  |-  ( A. x ( z  e. 
om  ->  ( x  ~~  z  ->  ph ) )  <->  ( z  e.  om  ->  A. x
( x  ~~  z  ->  ph ) ) )
1211ralbii 2567 . . . . . . . . . . . . . . 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 2806 . . . . . . . . . . . . . . 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 242 . . . . . . . . . . . . . 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 3271 . . . . . . . . . . . . . . . . . . . . 21  |-  ( x 
C.  y  ->  x  C_  y )
16 ssfi 7083 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( y  e.  Fin  /\  x  C_  y )  ->  x  e.  Fin )
17 isfi 6885 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( x  e.  Fin  <->  E. z  e.  om  x  ~~  z
)
1816, 17sylib 188 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( y  e.  Fin  /\  x  C_  y )  ->  E. z  e.  om  x  ~~  z )
1910, 15, 18syl2an 463 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  E. z  e.  om  x  ~~  z
)
20 ensym 6910 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( x 
~~  z  ->  z  ~~  x )
2120ad2antll 709 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  z  ~~  x
)
22 php3 7047 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( ( y  e.  Fin  /\  x  C.  y )  ->  x  ~<  y )
2310, 22sylan 457 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  x  ~<  y )
2423adantr 451 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  x  ~<  y
)
25 simpllr 735 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  y  ~~  w
)
26 sdomentr 6995 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( ( x  ~<  y  /\  y  ~~  w )  ->  x  ~<  w )
2724, 25, 26syl2anc 642 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  x  ~<  w
)
28 ensdomtr 6997 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( z  ~~  x  /\  x  ~<  w )  -> 
z  ~<  w )
2921, 27, 28syl2anc 642 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  z  ~<  w
)
30 nnon 4662 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( z  e.  om  ->  z  e.  On )
3130ad2antrl 708 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  z  e.  On )
322ad3antrrr 710 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  w  e.  On )
33 sdomel 7008 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( ( z  e.  On  /\  w  e.  On )  ->  ( z  ~<  w  ->  z  e.  w ) )
3431, 32, 33syl2anc 642 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  ( z  ~<  w  ->  z  e.  w
) )
3529, 34mpd 14 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( ( w  e. 
om  /\  y  ~~  w )  /\  x  C.  y )  /\  (
z  e.  om  /\  x  ~~  z ) )  ->  z  e.  w
)
3635ex 423 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  ( (
z  e.  om  /\  x  ~~  z )  -> 
z  e.  w ) )
37 simpr 447 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( z  e.  om  /\  x  ~~  z )  ->  x  ~~  z )
3837a1i 10 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  ( (
z  e.  om  /\  x  ~~  z )  ->  x  ~~  z ) )
3936, 38jcad 519 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  ( (
z  e.  om  /\  x  ~~  z )  -> 
( z  e.  w  /\  x  ~~  z ) ) )
4039reximdv2 2652 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  ( E. z  e.  om  x  ~~  z  ->  E. z  e.  w  x  ~~  z ) )
4119, 40mpd 14 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  E. z  e.  w  x  ~~  z )
42 r19.29 2683 . . . . . . . . . . . . . . . . . . . 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 424 . . . . . . . . . . . . . . . . . . 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 15 . . . . . . . . . . . . . . . . . 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 4665 . . . . . . . . . . . . . . . . . . . . . . 23  |-  Ord  om
46 ordelss 4408 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( Ord  om  /\  w  e.  om )  ->  w  C_ 
om )
4745, 46mpan 651 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( w  e.  om  ->  w  C_ 
om )
4847ad2antrr 706 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  w  C_  om )
4948sseld 3179 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  ( z  e.  w  ->  z  e. 
om ) )
50 pm2.27 35 . . . . . . . . . . . . . . . . . . . . 21  |-  ( z  e.  om  ->  (
( z  e.  om  ->  ( x  ~~  z  ->  ph ) )  -> 
( x  ~~  z  ->  ph ) ) )
5150imp3a 420 . . . . . . . . . . . . . . . . . . . 20  |-  ( z  e.  om  ->  (
( ( z  e. 
om  ->  ( x  ~~  z  ->  ph ) )  /\  x  ~~  z )  ->  ph ) )
5249, 51syl6 29 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  ( z  e.  w  ->  ( ( ( z  e.  om  ->  ( x  ~~  z  ->  ph ) )  /\  x  ~~  z )  ->  ph ) ) )
5352rexlimdv 2666 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  ( E. z  e.  w  (
( z  e.  om  ->  ( x  ~~  z  ->  ph ) )  /\  x  ~~  z )  ->  ph ) )
5444, 53syld 40 . . . . . . . . . . . . . . . . 17  |-  ( ( ( w  e.  om  /\  y  ~~  w )  /\  x  C.  y
)  ->  ( A. z  e.  w  (
z  e.  om  ->  ( x  ~~  z  ->  ph ) )  ->  ph )
)
5554ex 423 . . . . . . . . . . . . . . . 16  |-  ( ( w  e.  om  /\  y  ~~  w )  -> 
( x  C.  y  ->  ( A. z  e.  w  ( z  e. 
om  ->  ( x  ~~  z  ->  ph ) )  ->  ph ) ) )
5655com23 72 . . . . . . . . . . . . . . 15  |-  ( ( w  e.  om  /\  y  ~~  w )  -> 
( A. z  e.  w  ( z  e. 
om  ->  ( x  ~~  z  ->  ph ) )  -> 
( x  C.  y  ->  ph ) ) )
5756alimdv 1607 . . . . . . . . . . . . . 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 208 . . . . . . . . . . . . 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 52 . . . . . . . . . . . 12  |-  ( ( w  e.  om  /\  y  ~~  w )  -> 
( A. z  e.  w  ( z  e. 
om  ->  A. x ( x 
~~  z  ->  ph )
)  ->  ch )
)
6160impancom 427 . . . . . . . . . . 11  |-  ( ( w  e.  om  /\  A. z  e.  w  ( z  e.  om  ->  A. x ( x  ~~  z  ->  ph ) ) )  ->  ( y  ~~  w  ->  ch ) )
6261alrimiv 1617 . . . . . . . . . 10  |-  ( ( w  e.  om  /\  A. z  e.  w  ( z  e.  om  ->  A. x ( x  ~~  z  ->  ph ) ) )  ->  A. y ( y 
~~  w  ->  ch ) )
6362expcom 424 . . . . . . . . 9  |-  ( A. z  e.  w  (
z  e.  om  ->  A. x ( x  ~~  z  ->  ph ) )  -> 
( w  e.  om  ->  A. y ( y 
~~  w  ->  ch ) ) )
64 breq1 4026 . . . . . . . . . . 11  |-  ( x  =  y  ->  (
x  ~~  w  <->  y  ~~  w ) )
65 findcard3.1 . . . . . . . . . . 11  |-  ( x  =  y  ->  ( ph 
<->  ch ) )
6664, 65imbi12d 311 . . . . . . . . . 10  |-  ( x  =  y  ->  (
( x  ~~  w  ->  ph )  <->  ( y  ~~  w  ->  ch )
) )
6766cbvalv 1942 . . . . . . . . 9  |-  ( A. x ( x  ~~  w  ->  ph )  <->  A. y
( y  ~~  w  ->  ch ) )
6863, 67syl6ibr 218 . . . . . . . 8  |-  ( A. z  e.  w  (
z  e.  om  ->  A. x ( x  ~~  z  ->  ph ) )  -> 
( w  e.  om  ->  A. x ( x 
~~  w  ->  ph )
) )
6968a1i 10 . . . . . . 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 4647 . . . . . 6  |-  ( w  e.  On  ->  (
w  e.  om  ->  A. x ( x  ~~  w  ->  ph ) ) )
712, 70mpcom 32 . . . . 5  |-  ( w  e.  om  ->  A. x
( x  ~~  w  ->  ph ) )
7271rgen 2608 . . . 4  |-  A. w  e.  om  A. x ( x  ~~  w  ->  ph )
73 r19.29 2683 . . . 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 651 . . 3  |-  ( E. w  e.  om  A  ~~  w  ->  E. w  e.  om  ( A. x
( x  ~~  w  ->  ph )  /\  A  ~~  w ) )
751, 74sylbi 187 . 2  |-  ( A  e.  Fin  ->  E. w  e.  om  ( A. x
( x  ~~  w  ->  ph )  /\  A  ~~  w ) )
76 breq1 4026 . . . . . 6  |-  ( x  =  A  ->  (
x  ~~  w  <->  A  ~~  w ) )
77 findcard3.2 . . . . . 6  |-  ( x  =  A  ->  ( ph 
<->  ta ) )
7876, 77imbi12d 311 . . . . 5  |-  ( x  =  A  ->  (
( x  ~~  w  ->  ph )  <->  ( A  ~~  w  ->  ta )
) )
7978spcgv 2868 . . . 4  |-  ( A  e.  Fin  ->  ( A. x ( x  ~~  w  ->  ph )  ->  ( A  ~~  w  ->  ta ) ) )
8079imp3a 420 . . 3  |-  ( A  e.  Fin  ->  (
( A. x ( x  ~~  w  ->  ph )  /\  A  ~~  w )  ->  ta ) )
8180rexlimdvw 2670 . 2  |-  ( A  e.  Fin  ->  ( E. w  e.  om  ( A. x ( x 
~~  w  ->  ph )  /\  A  ~~  w )  ->  ta ) )
8275, 81mpd 14 1  |-  ( A  e.  Fin  ->  ta )
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 176    /\ wa 358   A.wal 1527    = wceq 1623    e. wcel 1684   A.wral 2543   E.wrex 2544    C_ wss 3152    C. wpss 3153   class class class wbr 4023   Ord word 4391   Oncon0 4392   omcom 4656    ~~ cen 6860    ~< csdm 6862   Fincfn 6863
This theorem is referenced by:  marypha1lem  7186  pgpfac1  15315  pgpfac  15319  fbfinnfr  17536  wilthlem3  20308
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1533  ax-5 1544  ax-17 1603  ax-9 1635  ax-8 1643  ax-13 1686  ax-14 1688  ax-6 1703  ax-7 1708  ax-11 1715  ax-12 1866  ax-ext 2264  ax-sep 4141  ax-nul 4149  ax-pow 4188  ax-pr 4214  ax-un 4512
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3or 935  df-3an 936  df-tru 1310  df-ex 1529  df-nf 1532  df-sb 1630  df-eu 2147  df-mo 2148  df-clab 2270  df-cleq 2276  df-clel 2279  df-nfc 2408  df-ne 2448  df-ral 2548  df-rex 2549  df-rab 2552  df-v 2790  df-sbc 2992  df-dif 3155  df-un 3157  df-in 3159  df-ss 3166  df-pss 3168  df-nul 3456  df-if 3566  df-pw 3627  df-sn 3646  df-pr 3647  df-tp 3648  df-op 3649  df-uni 3828  df-br 4024  df-opab 4078  df-tr 4114  df-eprel 4305  df-id 4309  df-po 4314  df-so 4315  df-fr 4352  df-we 4354  df-ord 4395  df-on 4396  df-lim 4397  df-suc 4398  df-om 4657  df-xp 4695  df-rel 4696  df-cnv 4697  df-co 4698  df-dm 4699  df-rn 4700  df-res 4701  df-ima 4702  df-iota 5219  df-fun 5257  df-fn 5258  df-f 5259  df-f1 5260  df-fo 5261  df-f1o 5262  df-fv 5263  df-er 6660  df-en 6864  df-dom 6865  df-sdom 6866  df-fin 6867
  Copyright terms: Public domain W3C validator