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

Theorem findcard 7120
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 6977 . . 3  |-  ( x  e.  Fin  <->  E. w  e.  om  x  ~~  w
)
3 breq2 4097 . . . . . . . 8  |-  ( w  =  (/)  ->  ( x 
~~  w  <->  x  ~~  (/) ) )
43imbi1d 231 . . . . . . 7  |-  ( w  =  (/)  ->  ( ( x  ~~  w  ->  ph )  <->  ( x  ~~  (/) 
->  ph ) ) )
54albidv 1872 . . . . . 6  |-  ( w  =  (/)  ->  ( A. x ( x  ~~  w  ->  ph )  <->  A. x
( x  ~~  (/)  ->  ph )
) )
6 breq2 4097 . . . . . . . 8  |-  ( w  =  v  ->  (
x  ~~  w  <->  x  ~~  v ) )
76imbi1d 231 . . . . . . 7  |-  ( w  =  v  ->  (
( x  ~~  w  ->  ph )  <->  ( x  ~~  v  ->  ph )
) )
87albidv 1872 . . . . . 6  |-  ( w  =  v  ->  ( A. x ( x  ~~  w  ->  ph )  <->  A. x
( x  ~~  v  ->  ph ) ) )
9 breq2 4097 . . . . . . . 8  |-  ( w  =  suc  v  -> 
( x  ~~  w  <->  x 
~~  suc  v )
)
109imbi1d 231 . . . . . . 7  |-  ( w  =  suc  v  -> 
( ( x  ~~  w  ->  ph )  <->  ( x  ~~  suc  v  ->  ph )
) )
1110albidv 1872 . . . . . 6  |-  ( w  =  suc  v  -> 
( A. x ( x  ~~  w  ->  ph )  <->  A. x ( x 
~~  suc  v  ->  ph ) ) )
12 en0 7012 . . . . . . . 8  |-  ( x 
~~  (/)  <->  x  =  (/) )
13 findcard.5 . . . . . . . . 9  |-  ps
14 findcard.1 . . . . . . . . 9  |-  ( x  =  (/)  ->  ( ph  <->  ps ) )
1513, 14mpbiri 168 . . . . . . . 8  |-  ( x  =  (/)  ->  ph )
1612, 15sylbi 121 . . . . . . 7  |-  ( x 
~~  (/)  ->  ph )
1716ax-gen 1498 . . . . . 6  |-  A. x
( x  ~~  (/)  ->  ph )
18 peano2 4699 . . . . . . . . . . . . 13  |-  ( v  e.  om  ->  suc  v  e.  om )
19 breq2 4097 . . . . . . . . . . . . . 14  |-  ( w  =  suc  v  -> 
( y  ~~  w  <->  y 
~~  suc  v )
)
2019rspcev 2911 . . . . . . . . . . . . 13  |-  ( ( suc  v  e.  om  /\  y  ~~  suc  v
)  ->  E. w  e.  om  y  ~~  w
)
2118, 20sylan 283 . . . . . . . . . . . 12  |-  ( ( v  e.  om  /\  y  ~~  suc  v )  ->  E. w  e.  om  y  ~~  w )
22 isfi 6977 . . . . . . . . . . . 12  |-  ( y  e.  Fin  <->  E. w  e.  om  y  ~~  w
)
2321, 22sylibr 134 . . . . . . . . . . 11  |-  ( ( v  e.  om  /\  y  ~~  suc  v )  ->  y  e.  Fin )
24233adant2 1043 . . . . . . . . . 10  |-  ( ( v  e.  om  /\  A. x ( x  ~~  v  ->  ph )  /\  y  ~~  suc  v )  -> 
y  e.  Fin )
25 dif1en 7111 . . . . . . . . . . . . . . . 16  |-  ( ( v  e.  om  /\  y  ~~  suc  v  /\  z  e.  y )  ->  ( y  \  {
z } )  ~~  v )
26253expa 1230 . . . . . . . . . . . . . . 15  |-  ( ( ( v  e.  om  /\  y  ~~  suc  v
)  /\  z  e.  y )  ->  (
y  \  { z } )  ~~  v
)
27 vex 2806 . . . . . . . . . . . . . . . . 17  |-  y  e. 
_V
28 difexg 4236 . . . . . . . . . . . . . . . . 17  |-  ( y  e.  _V  ->  (
y  \  { z } )  e.  _V )
2927, 28ax-mp 5 . . . . . . . . . . . . . . . 16  |-  ( y 
\  { z } )  e.  _V
30 breq1 4096 . . . . . . . . . . . . . . . . 17  |-  ( x  =  ( y  \  { z } )  ->  ( x  ~~  v 
<->  ( y  \  {
z } )  ~~  v ) )
31 findcard.2 . . . . . . . . . . . . . . . . 17  |-  ( x  =  ( y  \  { z } )  ->  ( ph  <->  ch )
)
3230, 31imbi12d 234 . . . . . . . . . . . . . . . 16  |-  ( x  =  ( y  \  { z } )  ->  ( ( x 
~~  v  ->  ph )  <->  ( ( y  \  {
z } )  ~~  v  ->  ch ) ) )
3329, 32spcv 2901 . . . . . . . . . . . . . . 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 2613 . . . . . . . . . . . . 13  |-  ( ( v  e.  om  /\  y  ~~  suc  v )  ->  ( A. x
( x  ~~  v  ->  ph )  ->  A. z  e.  y  ch )
)
3635imp 124 . . . . . . . . . . . 12  |-  ( ( ( v  e.  om  /\  y  ~~  suc  v
)  /\  A. x
( x  ~~  v  ->  ph ) )  ->  A. z  e.  y  ch )
3736an32s 570 . . . . . . . . . . 11  |-  ( ( ( v  e.  om  /\ 
A. x ( x 
~~  v  ->  ph )
)  /\  y  ~~  suc  v )  ->  A. z  e.  y  ch )
38373impa 1221 . . . . . . . . . 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 1229 . . . . . . . 8  |-  ( v  e.  om  ->  ( A. x ( x  ~~  v  ->  ph )  ->  (
y  ~~  suc  v  ->  th ) ) )
4241alrimdv 1924 . . . . . . 7  |-  ( v  e.  om  ->  ( A. x ( x  ~~  v  ->  ph )  ->  A. y
( y  ~~  suc  v  ->  th ) ) )
43 breq1 4096 . . . . . . . . 9  |-  ( x  =  y  ->  (
x  ~~  suc  v  <->  y  ~~  suc  v ) )
44 findcard.3 . . . . . . . . 9  |-  ( x  =  y  ->  ( ph 
<->  th ) )
4543, 44imbi12d 234 . . . . . . . 8  |-  ( x  =  y  ->  (
( x  ~~  suc  v  ->  ph )  <->  ( y  ~~  suc  v  ->  th )
) )
4645cbvalv 1966 . . . . . . 7  |-  ( A. x ( x  ~~  suc  v  ->  ph )  <->  A. y ( y  ~~  suc  v  ->  th )
)
4742, 46imbitrrdi 162 . . . . . 6  |-  ( v  e.  om  ->  ( A. x ( x  ~~  v  ->  ph )  ->  A. x
( x  ~~  suc  v  ->  ph ) ) )
485, 8, 11, 17, 47finds1 4706 . . . . 5  |-  ( w  e.  om  ->  A. x
( x  ~~  w  ->  ph ) )
494819.21bi 1607 . . . 4  |-  ( w  e.  om  ->  (
x  ~~  w  ->  ph ) )
5049rexlimiv 2645 . . 3  |-  ( E. w  e.  om  x  ~~  w  ->  ph )
512, 50sylbi 121 . 2  |-  ( x  e.  Fin  ->  ph )
521, 51vtoclga 2871 1  |-  ( A  e.  Fin  ->  ta )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 104    <-> wb 105    /\ w3a 1005   A.wal 1396    = wceq 1398    e. wcel 2202   A.wral 2511   E.wrex 2512   _Vcvv 2803    \ cdif 3198   (/)c0 3496   {csn 3673   class class class wbr 4093   suc csuc 4468   omcom 4694    ~~ cen 6950   Fincfn 6952
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 619  ax-in2 620  ax-io 717  ax-5 1496  ax-7 1497  ax-gen 1498  ax-ie1 1542  ax-ie2 1543  ax-8 1553  ax-10 1554  ax-11 1555  ax-i12 1556  ax-bndl 1558  ax-4 1559  ax-17 1575  ax-i9 1579  ax-ial 1583  ax-i5r 1584  ax-13 2204  ax-14 2205  ax-ext 2213  ax-coll 4209  ax-sep 4212  ax-nul 4220  ax-pow 4270  ax-pr 4305  ax-un 4536  ax-setind 4641  ax-iinf 4692
This theorem depends on definitions:  df-bi 117  df-dc 843  df-3or 1006  df-3an 1007  df-tru 1401  df-fal 1404  df-nf 1510  df-sb 1811  df-eu 2082  df-mo 2083  df-clab 2218  df-cleq 2224  df-clel 2227  df-nfc 2364  df-ne 2404  df-ral 2516  df-rex 2517  df-reu 2518  df-rab 2520  df-v 2805  df-sbc 3033  df-csb 3129  df-dif 3203  df-un 3205  df-in 3207  df-ss 3214  df-nul 3497  df-if 3608  df-pw 3658  df-sn 3679  df-pr 3680  df-op 3682  df-uni 3899  df-int 3934  df-iun 3977  df-br 4094  df-opab 4156  df-mpt 4157  df-tr 4193  df-id 4396  df-iord 4469  df-on 4471  df-suc 4474  df-iom 4695  df-xp 4737  df-rel 4738  df-cnv 4739  df-co 4740  df-dm 4741  df-rn 4742  df-res 4743  df-ima 4744  df-iota 5293  df-fun 5335  df-fn 5336  df-f 5337  df-f1 5338  df-fo 5339  df-f1o 5340  df-fv 5341  df-er 6745  df-en 6953  df-fin 6955
This theorem is referenced by:  xpfi  7167
  Copyright terms: Public domain W3C validator