ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  findcard Unicode version

Theorem findcard 6750
Description: Schema for induction on the cardinality of a finite set. The inductive hypothesis is that the result is true on the given set with any one element removed. The result is then proven to be true for all finite sets. (Contributed by Jeff Madsen, 2-Sep-2009.)
Hypotheses
Ref Expression
findcard.1  |-  ( x  =  (/)  ->  ( ph  <->  ps ) )
findcard.2  |-  ( x  =  ( y  \  { z } )  ->  ( ph  <->  ch )
)
findcard.3  |-  ( x  =  y  ->  ( ph 
<->  th ) )
findcard.4  |-  ( x  =  A  ->  ( ph 
<->  ta ) )
findcard.5  |-  ps
findcard.6  |-  ( y  e.  Fin  ->  ( A. z  e.  y  ch  ->  th ) )
Assertion
Ref Expression
findcard  |-  ( A  e.  Fin  ->  ta )
Distinct variable groups:    x, y, z, A    ps, x    ch, x    th, x    ta, x    ph, y, z
Allowed substitution hints:    ph( x)    ps( y,
z)    ch( y, z)    th( y,
z)    ta( y, z)

Proof of Theorem findcard
Dummy variables  w  v are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 findcard.4 . 2  |-  ( x  =  A  ->  ( ph 
<->  ta ) )
2 isfi 6623 . . 3  |-  ( x  e.  Fin  <->  E. w  e.  om  x  ~~  w
)
3 breq2 3903 . . . . . . . 8  |-  ( w  =  (/)  ->  ( x 
~~  w  <->  x  ~~  (/) ) )
43imbi1d 230 . . . . . . 7  |-  ( w  =  (/)  ->  ( ( x  ~~  w  ->  ph )  <->  ( x  ~~  (/) 
->  ph ) ) )
54albidv 1780 . . . . . 6  |-  ( w  =  (/)  ->  ( A. x ( x  ~~  w  ->  ph )  <->  A. x
( x  ~~  (/)  ->  ph )
) )
6 breq2 3903 . . . . . . . 8  |-  ( w  =  v  ->  (
x  ~~  w  <->  x  ~~  v ) )
76imbi1d 230 . . . . . . 7  |-  ( w  =  v  ->  (
( x  ~~  w  ->  ph )  <->  ( x  ~~  v  ->  ph )
) )
87albidv 1780 . . . . . 6  |-  ( w  =  v  ->  ( A. x ( x  ~~  w  ->  ph )  <->  A. x
( x  ~~  v  ->  ph ) ) )
9 breq2 3903 . . . . . . . 8  |-  ( w  =  suc  v  -> 
( x  ~~  w  <->  x 
~~  suc  v )
)
109imbi1d 230 . . . . . . 7  |-  ( w  =  suc  v  -> 
( ( x  ~~  w  ->  ph )  <->  ( x  ~~  suc  v  ->  ph )
) )
1110albidv 1780 . . . . . 6  |-  ( w  =  suc  v  -> 
( A. x ( x  ~~  w  ->  ph )  <->  A. x ( x 
~~  suc  v  ->  ph ) ) )
12 en0 6657 . . . . . . . 8  |-  ( x 
~~  (/)  <->  x  =  (/) )
13 findcard.5 . . . . . . . . 9  |-  ps
14 findcard.1 . . . . . . . . 9  |-  ( x  =  (/)  ->  ( ph  <->  ps ) )
1513, 14mpbiri 167 . . . . . . . 8  |-  ( x  =  (/)  ->  ph )
1612, 15sylbi 120 . . . . . . 7  |-  ( x 
~~  (/)  ->  ph )
1716ax-gen 1410 . . . . . 6  |-  A. x
( x  ~~  (/)  ->  ph )
18 peano2 4479 . . . . . . . . . . . . 13  |-  ( v  e.  om  ->  suc  v  e.  om )
19 breq2 3903 . . . . . . . . . . . . . 14  |-  ( w  =  suc  v  -> 
( y  ~~  w  <->  y 
~~  suc  v )
)
2019rspcev 2763 . . . . . . . . . . . . 13  |-  ( ( suc  v  e.  om  /\  y  ~~  suc  v
)  ->  E. w  e.  om  y  ~~  w
)
2118, 20sylan 281 . . . . . . . . . . . 12  |-  ( ( v  e.  om  /\  y  ~~  suc  v )  ->  E. w  e.  om  y  ~~  w )
22 isfi 6623 . . . . . . . . . . . 12  |-  ( y  e.  Fin  <->  E. w  e.  om  y  ~~  w
)
2321, 22sylibr 133 . . . . . . . . . . 11  |-  ( ( v  e.  om  /\  y  ~~  suc  v )  ->  y  e.  Fin )
24233adant2 985 . . . . . . . . . 10  |-  ( ( v  e.  om  /\  A. x ( x  ~~  v  ->  ph )  /\  y  ~~  suc  v )  -> 
y  e.  Fin )
25 dif1en 6741 . . . . . . . . . . . . . . . 16  |-  ( ( v  e.  om  /\  y  ~~  suc  v  /\  z  e.  y )  ->  ( y  \  {
z } )  ~~  v )
26253expa 1166 . . . . . . . . . . . . . . 15  |-  ( ( ( v  e.  om  /\  y  ~~  suc  v
)  /\  z  e.  y )  ->  (
y  \  { z } )  ~~  v
)
27 vex 2663 . . . . . . . . . . . . . . . . 17  |-  y  e. 
_V
28 difexg 4039 . . . . . . . . . . . . . . . . 17  |-  ( y  e.  _V  ->  (
y  \  { z } )  e.  _V )
2927, 28ax-mp 5 . . . . . . . . . . . . . . . 16  |-  ( y 
\  { z } )  e.  _V
30 breq1 3902 . . . . . . . . . . . . . . . . 17  |-  ( x  =  ( y  \  { z } )  ->  ( x  ~~  v 
<->  ( y  \  {
z } )  ~~  v ) )
31 findcard.2 . . . . . . . . . . . . . . . . 17  |-  ( x  =  ( y  \  { z } )  ->  ( ph  <->  ch )
)
3230, 31imbi12d 233 . . . . . . . . . . . . . . . 16  |-  ( x  =  ( y  \  { z } )  ->  ( ( x 
~~  v  ->  ph )  <->  ( ( y  \  {
z } )  ~~  v  ->  ch ) ) )
3329, 32spcv 2753 . . . . . . . . . . . . . . 15  |-  ( A. x ( x  ~~  v  ->  ph )  ->  (
( y  \  {
z } )  ~~  v  ->  ch ) )
3426, 33syl5com 29 . . . . . . . . . . . . . 14  |-  ( ( ( v  e.  om  /\  y  ~~  suc  v
)  /\  z  e.  y )  ->  ( A. x ( x  ~~  v  ->  ph )  ->  ch ) )
3534ralrimdva 2489 . . . . . . . . . . . . 13  |-  ( ( v  e.  om  /\  y  ~~  suc  v )  ->  ( A. x
( x  ~~  v  ->  ph )  ->  A. z  e.  y  ch )
)
3635imp 123 . . . . . . . . . . . 12  |-  ( ( ( v  e.  om  /\  y  ~~  suc  v
)  /\  A. x
( x  ~~  v  ->  ph ) )  ->  A. z  e.  y  ch )
3736an32s 542 . . . . . . . . . . 11  |-  ( ( ( v  e.  om  /\ 
A. x ( x 
~~  v  ->  ph )
)  /\  y  ~~  suc  v )  ->  A. z  e.  y  ch )
38373impa 1161 . . . . . . . . . 10  |-  ( ( v  e.  om  /\  A. x ( x  ~~  v  ->  ph )  /\  y  ~~  suc  v )  ->  A. z  e.  y  ch )
39 findcard.6 . . . . . . . . . 10  |-  ( y  e.  Fin  ->  ( A. z  e.  y  ch  ->  th ) )
4024, 38, 39sylc 62 . . . . . . . . 9  |-  ( ( v  e.  om  /\  A. x ( x  ~~  v  ->  ph )  /\  y  ~~  suc  v )  ->  th )
41403exp 1165 . . . . . . . 8  |-  ( v  e.  om  ->  ( A. x ( x  ~~  v  ->  ph )  ->  (
y  ~~  suc  v  ->  th ) ) )
4241alrimdv 1832 . . . . . . 7  |-  ( v  e.  om  ->  ( A. x ( x  ~~  v  ->  ph )  ->  A. y
( y  ~~  suc  v  ->  th ) ) )
43 breq1 3902 . . . . . . . . 9  |-  ( x  =  y  ->  (
x  ~~  suc  v  <->  y  ~~  suc  v ) )
44 findcard.3 . . . . . . . . 9  |-  ( x  =  y  ->  ( ph 
<->  th ) )
4543, 44imbi12d 233 . . . . . . . 8  |-  ( x  =  y  ->  (
( x  ~~  suc  v  ->  ph )  <->  ( y  ~~  suc  v  ->  th )
) )
4645cbvalv 1871 . . . . . . 7  |-  ( A. x ( x  ~~  suc  v  ->  ph )  <->  A. y ( y  ~~  suc  v  ->  th )
)
4742, 46syl6ibr 161 . . . . . 6  |-  ( v  e.  om  ->  ( A. x ( x  ~~  v  ->  ph )  ->  A. x
( x  ~~  suc  v  ->  ph ) ) )
485, 8, 11, 17, 47finds1 4486 . . . . 5  |-  ( w  e.  om  ->  A. x
( x  ~~  w  ->  ph ) )
494819.21bi 1522 . . . 4  |-  ( w  e.  om  ->  (
x  ~~  w  ->  ph ) )
5049rexlimiv 2520 . . 3  |-  ( E. w  e.  om  x  ~~  w  ->  ph )
512, 50sylbi 120 . 2  |-  ( x  e.  Fin  ->  ph )
521, 51vtoclga 2726 1  |-  ( A  e.  Fin  ->  ta )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 103    <-> wb 104    /\ w3a 947   A.wal 1314    = wceq 1316    e. wcel 1465   A.wral 2393   E.wrex 2394   _Vcvv 2660    \ cdif 3038   (/)c0 3333   {csn 3497   class class class wbr 3899   suc csuc 4257   omcom 4474    ~~ cen 6600   Fincfn 6602
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 105  ax-ia2 106  ax-ia3 107  ax-in1 588  ax-in2 589  ax-io 683  ax-5 1408  ax-7 1409  ax-gen 1410  ax-ie1 1454  ax-ie2 1455  ax-8 1467  ax-10 1468  ax-11 1469  ax-i12 1470  ax-bndl 1471  ax-4 1472  ax-13 1476  ax-14 1477  ax-17 1491  ax-i9 1495  ax-ial 1499  ax-i5r 1500  ax-ext 2099  ax-coll 4013  ax-sep 4016  ax-nul 4024  ax-pow 4068  ax-pr 4101  ax-un 4325  ax-setind 4422  ax-iinf 4472
This theorem depends on definitions:  df-bi 116  df-dc 805  df-3or 948  df-3an 949  df-tru 1319  df-fal 1322  df-nf 1422  df-sb 1721  df-eu 1980  df-mo 1981  df-clab 2104  df-cleq 2110  df-clel 2113  df-nfc 2247  df-ne 2286  df-ral 2398  df-rex 2399  df-reu 2400  df-rab 2402  df-v 2662  df-sbc 2883  df-csb 2976  df-dif 3043  df-un 3045  df-in 3047  df-ss 3054  df-nul 3334  df-if 3445  df-pw 3482  df-sn 3503  df-pr 3504  df-op 3506  df-uni 3707  df-int 3742  df-iun 3785  df-br 3900  df-opab 3960  df-mpt 3961  df-tr 3997  df-id 4185  df-iord 4258  df-on 4260  df-suc 4263  df-iom 4475  df-xp 4515  df-rel 4516  df-cnv 4517  df-co 4518  df-dm 4519  df-rn 4520  df-res 4521  df-ima 4522  df-iota 5058  df-fun 5095  df-fn 5096  df-f 5097  df-f1 5098  df-fo 5099  df-f1o 5100  df-fv 5101  df-er 6397  df-en 6603  df-fin 6605
This theorem is referenced by:  xpfi  6786
  Copyright terms: Public domain W3C validator