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

Theorem ssfirab 7210
Description: A subset of a finite set is finite if it is defined by a decidable property. (Contributed by Jim Kingdon, 27-May-2022.)
Hypotheses
Ref Expression
ssfirab.a  |-  ( ph  ->  A  e.  Fin )
ssfirab.dc  |-  ( ph  ->  A. x  e.  A DECID  ps )
Assertion
Ref Expression
ssfirab  |-  ( ph  ->  { x  e.  A  |  ps }  e.  Fin )
Distinct variable group:    x, A
Allowed substitution hints:    ph( x)    ps( x)

Proof of Theorem ssfirab
Dummy variables  w  y  z are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 rabeq 2807 . . 3  |-  ( w  =  (/)  ->  { x  e.  w  |  ps }  =  { x  e.  (/)  |  ps }
)
21eleq1d 2303 . 2  |-  ( w  =  (/)  ->  ( { x  e.  w  |  ps }  e.  Fin  <->  {
x  e.  (/)  |  ps }  e.  Fin )
)
3 rabeq 2807 . . 3  |-  ( w  =  y  ->  { x  e.  w  |  ps }  =  { x  e.  y  |  ps } )
43eleq1d 2303 . 2  |-  ( w  =  y  ->  ( { x  e.  w  |  ps }  e.  Fin  <->  {
x  e.  y  |  ps }  e.  Fin ) )
5 rabeq 2807 . . 3  |-  ( w  =  ( y  u. 
{ z } )  ->  { x  e.  w  |  ps }  =  { x  e.  ( y  u.  { z } )  |  ps } )
65eleq1d 2303 . 2  |-  ( w  =  ( y  u. 
{ z } )  ->  ( { x  e.  w  |  ps }  e.  Fin  <->  { x  e.  ( y  u.  {
z } )  |  ps }  e.  Fin ) )
7 rabeq 2807 . . 3  |-  ( w  =  A  ->  { x  e.  w  |  ps }  =  { x  e.  A  |  ps } )
87eleq1d 2303 . 2  |-  ( w  =  A  ->  ( { x  e.  w  |  ps }  e.  Fin  <->  {
x  e.  A  |  ps }  e.  Fin )
)
9 rab0 3541 . . . 4  |-  { x  e.  (/)  |  ps }  =  (/)
10 0fi 7154 . . . 4  |-  (/)  e.  Fin
119, 10eqeltri 2307 . . 3  |-  { x  e.  (/)  |  ps }  e.  Fin
1211a1i 9 . 2  |-  ( ph  ->  { x  e.  (/)  |  ps }  e.  Fin )
13 rabun2 3504 . . . . 5  |-  { x  e.  ( y  u.  {
z } )  |  ps }  =  ( { x  e.  y  |  ps }  u.  { x  e.  { z }  |  ps }
)
14 sbsbc 3049 . . . . . . . . . 10  |-  ( [ z  /  x ] ps 
<-> 
[. z  /  x ]. ps )
15 vex 2818 . . . . . . . . . . 11  |-  z  e. 
_V
16 ralsns 3732 . . . . . . . . . . 11  |-  ( z  e.  _V  ->  ( A. x  e.  { z } ps  <->  [. z  /  x ]. ps ) )
1715, 16ax-mp 5 . . . . . . . . . 10  |-  ( A. x  e.  { z } ps  <->  [. z  /  x ]. ps )
1814, 17bitr4i 187 . . . . . . . . 9  |-  ( [ z  /  x ] ps 
<-> 
A. x  e.  {
z } ps )
19 rabid2 2723 . . . . . . . . 9  |-  ( { z }  =  {
x  e.  { z }  |  ps }  <->  A. x  e.  { z } ps )
2018, 19sylbb2 138 . . . . . . . 8  |-  ( [ z  /  x ] ps  ->  { z }  =  { x  e. 
{ z }  |  ps } )
2120adantl 277 . . . . . . 7  |-  ( ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  /\  [ z  /  x ] ps )  ->  { z }  =  { x  e.  { z }  |  ps } )
2221uneq2d 3377 . . . . . 6  |-  ( ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  /\  [ z  /  x ] ps )  ->  ( { x  e.  y  |  ps }  u.  {
z } )  =  ( { x  e.  y  |  ps }  u.  { x  e.  {
z }  |  ps } ) )
23 simplr 529 . . . . . . 7  |-  ( ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  /\  [ z  /  x ] ps )  ->  { x  e.  y  |  ps }  e.  Fin )
2415a1i 9 . . . . . . 7  |-  ( ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  /\  [ z  /  x ] ps )  ->  z  e.  _V )
25 simprr 533 . . . . . . . . . 10  |-  ( ( ( ph  /\  y  e.  Fin )  /\  (
y  C_  A  /\  z  e.  ( A  \  y ) ) )  ->  z  e.  ( A  \  y ) )
2625ad2antrr 488 . . . . . . . . 9  |-  ( ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  /\  [ z  /  x ] ps )  ->  z  e.  ( A  \  y
) )
2726eldifbd 3226 . . . . . . . 8  |-  ( ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  /\  [ z  /  x ] ps )  ->  -.  z  e.  y )
28 elrabi 2973 . . . . . . . 8  |-  ( z  e.  { x  e.  y  |  ps }  ->  z  e.  y )
2927, 28nsyl 633 . . . . . . 7  |-  ( ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  /\  [ z  /  x ] ps )  ->  -.  z  e.  { x  e.  y  |  ps } )
30 unsnfi 7192 . . . . . . 7  |-  ( ( { x  e.  y  |  ps }  e.  Fin  /\  z  e.  _V  /\ 
-.  z  e.  {
x  e.  y  |  ps } )  -> 
( { x  e.  y  |  ps }  u.  { z } )  e.  Fin )
3123, 24, 29, 30syl3anc 1274 . . . . . 6  |-  ( ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  /\  [ z  /  x ] ps )  ->  ( { x  e.  y  |  ps }  u.  {
z } )  e. 
Fin )
3222, 31eqeltrrd 2312 . . . . 5  |-  ( ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  /\  [ z  /  x ] ps )  ->  ( { x  e.  y  |  ps }  u.  {
x  e.  { z }  |  ps }
)  e.  Fin )
3313, 32eqeltrid 2321 . . . 4  |-  ( ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  /\  [ z  /  x ] ps )  ->  { x  e.  ( y  u.  {
z } )  |  ps }  e.  Fin )
34 ralsns 3732 . . . . . . . . . . . 12  |-  ( z  e.  _V  ->  ( A. x  e.  { z }  -.  ps  <->  [. z  /  x ].  -.  ps )
)
3515, 34ax-mp 5 . . . . . . . . . . 11  |-  ( A. x  e.  { z }  -.  ps  <->  [. z  /  x ].  -.  ps )
36 sbsbc 3049 . . . . . . . . . . 11  |-  ( [ z  /  x ]  -.  ps  <->  [. z  /  x ].  -.  ps )
37 sbn 2008 . . . . . . . . . . 11  |-  ( [ z  /  x ]  -.  ps  <->  -.  [ z  /  x ] ps )
3835, 36, 373bitr2ri 209 . . . . . . . . . 10  |-  ( -. 
[ z  /  x ] ps  <->  A. x  e.  {
z }  -.  ps )
39 rabeq0 3542 . . . . . . . . . 10  |-  ( { x  e.  { z }  |  ps }  =  (/)  <->  A. x  e.  {
z }  -.  ps )
4038, 39sylbb2 138 . . . . . . . . 9  |-  ( -. 
[ z  /  x ] ps  ->  { x  e.  { z }  |  ps }  =  (/) )
4140adantl 277 . . . . . . . 8  |-  ( ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  /\  -.  [ z  /  x ] ps )  ->  { x  e.  { z }  |  ps }  =  (/) )
4241uneq2d 3377 . . . . . . 7  |-  ( ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  /\  -.  [ z  /  x ] ps )  -> 
( { x  e.  y  |  ps }  u.  { x  e.  {
z }  |  ps } )  =  ( { x  e.  y  |  ps }  u.  (/) ) )
43 un0 3546 . . . . . . 7  |-  ( { x  e.  y  |  ps }  u.  (/) )  =  { x  e.  y  |  ps }
4442, 43eqtrdi 2283 . . . . . 6  |-  ( ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  /\  -.  [ z  /  x ] ps )  -> 
( { x  e.  y  |  ps }  u.  { x  e.  {
z }  |  ps } )  =  {
x  e.  y  |  ps } )
4513, 44eqtrid 2279 . . . . 5  |-  ( ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  /\  -.  [ z  /  x ] ps )  ->  { x  e.  (
y  u.  { z } )  |  ps }  =  { x  e.  y  |  ps } )
46 simplr 529 . . . . 5  |-  ( ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  /\  -.  [ z  /  x ] ps )  ->  { x  e.  y  |  ps }  e.  Fin )
4745, 46eqeltrd 2311 . . . 4  |-  ( ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  /\  -.  [ z  /  x ] ps )  ->  { x  e.  (
y  u.  { z } )  |  ps }  e.  Fin )
48 simplrr 538 . . . . . . 7  |-  ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  ->  z  e.  ( A 
\  y ) )
4948eldifad 3225 . . . . . 6  |-  ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  ->  z  e.  A )
50 ssfirab.dc . . . . . . 7  |-  ( ph  ->  A. x  e.  A DECID  ps )
5150ad3antrrr 492 . . . . . 6  |-  ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  ->  A. x  e.  A DECID  ps )
52 nfs1v 1995 . . . . . . . 8  |-  F/ x [ z  /  x ] ps
5352nfdc 1707 . . . . . . 7  |-  F/ xDECID  [ z  /  x ] ps
54 sbequ12 1820 . . . . . . . 8  |-  ( x  =  z  ->  ( ps 
<->  [ z  /  x ] ps ) )
5554dcbid 846 . . . . . . 7  |-  ( x  =  z  ->  (DECID  ps  <-> DECID  [ z  /  x ] ps ) )
5653, 55rspc 2917 . . . . . 6  |-  ( z  e.  A  ->  ( A. x  e.  A DECID  ps  -> DECID  [ z  /  x ] ps ) )
5749, 51, 56sylc 62 . . . . 5  |-  ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  -> DECID  [ z  /  x ] ps )
58 exmiddc 844 . . . . 5  |-  (DECID  [ z  /  x ] ps  ->  ( [ z  /  x ] ps  \/  -.  [ z  /  x ] ps ) )
5957, 58syl 14 . . . 4  |-  ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  ->  ( [ z  /  x ] ps  \/  -.  [ z  /  x ] ps ) )
6033, 47, 59mpjaodan 806 . . 3  |-  ( ( ( ( ph  /\  y  e.  Fin )  /\  ( y  C_  A  /\  z  e.  ( A  \  y ) ) )  /\  { x  e.  y  |  ps }  e.  Fin )  ->  { x  e.  ( y  u.  { z } )  |  ps }  e.  Fin )
6160ex 115 . 2  |-  ( ( ( ph  /\  y  e.  Fin )  /\  (
y  C_  A  /\  z  e.  ( A  \  y ) ) )  ->  ( { x  e.  y  |  ps }  e.  Fin  ->  { x  e.  ( y  u.  {
z } )  |  ps }  e.  Fin ) )
62 ssfirab.a . 2  |-  ( ph  ->  A  e.  Fin )
632, 4, 6, 8, 12, 61, 62findcard2sd 7162 1  |-  ( ph  ->  { x  e.  A  |  ps }  e.  Fin )
Colors of variables: wff set class
Syntax hints:   -. wn 3    -> wi 4    /\ wa 104    <-> wb 105    \/ wo 716  DECID wdc 842    = wceq 1398   [wsb 1811    e. wcel 2205   A.wral 2522   {crab 2526   _Vcvv 2815   [.wsbc 3045    \ cdif 3211    u. cun 3212    C_ wss 3214   (/)c0 3512   {csn 3694   Fincfn 6988
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 2207  ax-14 2208  ax-ext 2216  ax-coll 4230  ax-sep 4233  ax-nul 4241  ax-pow 4292  ax-pr 4327  ax-un 4559  ax-setind 4664  ax-iinf 4715
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 1812  df-eu 2085  df-mo 2086  df-clab 2221  df-cleq 2227  df-clel 2230  df-nfc 2375  df-ne 2415  df-ral 2527  df-rex 2528  df-reu 2529  df-rab 2531  df-v 2817  df-sbc 3046  df-csb 3142  df-dif 3216  df-un 3218  df-in 3220  df-ss 3227  df-nul 3513  df-if 3625  df-pw 3676  df-sn 3700  df-pr 3701  df-op 3703  df-uni 3920  df-int 3955  df-iun 3998  df-br 4115  df-opab 4177  df-mpt 4178  df-tr 4214  df-id 4419  df-iord 4492  df-on 4494  df-suc 4497  df-iom 4718  df-xp 4760  df-rel 4761  df-cnv 4762  df-co 4763  df-dm 4764  df-rn 4765  df-res 4766  df-ima 4767  df-iota 5317  df-fun 5359  df-fn 5360  df-f 5361  df-f1 5362  df-fo 5363  df-f1o 5364  df-fv 5365  df-1o 6660  df-er 6780  df-en 6989  df-fin 6991
This theorem is referenced by:  ssfidc  7211  hashfibclem  11231  phivalfi  12934  hashdvds  12943  phiprmpw  12944  phimullem  12947  hashgcdeq  12962  ballotfilemofi  13163  ballotfilem2  13172  ballotfilemfc0  13176  ballotfilemfcc  13177  ballotfilemefi  13181  ballotfilemafi  13182  ballotfilembfi  13183  lgsquadlemofi  16075  lgsquadlem1  16076  lgsquadlem2  16077  vtxedgfi  16410  vtxlpfi  16411  konigsberglem5  16613
  Copyright terms: Public domain W3C validator