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

Theorem acni2 7916
Description: The property of being a choice set of length  A. (Contributed by Mario Carneiro, 31-Aug-2015.)
Assertion
Ref Expression
acni2  |-  ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  ->  E. g ( g : A --> X  /\  A. x  e.  A  (
g `  x )  e.  B ) )
Distinct variable groups:    x, g, A    B, g    g, X, x
Allowed substitution hint:    B( x)

Proof of Theorem acni2
Dummy variables  f 
y are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eldifsn 3919 . . . . . . 7  |-  ( B  e.  ( ~P X  \  { (/) } )  <->  ( B  e.  ~P X  /\  B  =/=  (/) ) )
2 elpw2g 4355 . . . . . . . 8  |-  ( X  e. AC  A  ->  ( B  e.  ~P X  <->  B  C_  X
) )
32anbi1d 686 . . . . . . 7  |-  ( X  e. AC  A  ->  ( ( B  e.  ~P X  /\  B  =/=  (/) )  <->  ( B  C_  X  /\  B  =/=  (/) ) ) )
41, 3syl5bb 249 . . . . . 6  |-  ( X  e. AC  A  ->  ( B  e.  ( ~P X  \  { (/) } )  <->  ( B  C_  X  /\  B  =/=  (/) ) ) )
54ralbidv 2717 . . . . 5  |-  ( X  e. AC  A  ->  ( A. x  e.  A  B  e.  ( ~P X  \  { (/) } )  <->  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) ) )
65biimpar 472 . . . 4  |-  ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  ->  A. x  e.  A  B  e.  ( ~P X  \  { (/) } ) )
7 eqid 2435 . . . . 5  |-  ( x  e.  A  |->  B )  =  ( x  e.  A  |->  B )
87fmpt 5881 . . . 4  |-  ( A. x  e.  A  B  e.  ( ~P X  \  { (/) } )  <->  ( x  e.  A  |->  B ) : A --> ( ~P X  \  { (/) } ) )
96, 8sylib 189 . . 3  |-  ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  -> 
( x  e.  A  |->  B ) : A --> ( ~P X  \  { (/)
} ) )
10 acni 7915 . . 3  |-  ( ( X  e. AC  A  /\  ( x  e.  A  |->  B ) : A --> ( ~P X  \  { (/)
} ) )  ->  E. f A. y  e.  A  ( f `  y )  e.  ( ( x  e.  A  |->  B ) `  y
) )
119, 10syldan 457 . 2  |-  ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  ->  E. f A. y  e.  A  ( f `  y )  e.  ( ( x  e.  A  |->  B ) `  y
) )
12 nffvmpt1 5727 . . . . . 6  |-  F/_ x
( ( x  e.  A  |->  B ) `  y )
1312nfel2 2583 . . . . 5  |-  F/ x
( f `  y
)  e.  ( ( x  e.  A  |->  B ) `  y )
14 nfv 1629 . . . . 5  |-  F/ y ( f `  x
)  e.  ( ( x  e.  A  |->  B ) `  x )
15 fveq2 5719 . . . . . 6  |-  ( y  =  x  ->  (
f `  y )  =  ( f `  x ) )
16 fveq2 5719 . . . . . 6  |-  ( y  =  x  ->  (
( x  e.  A  |->  B ) `  y
)  =  ( ( x  e.  A  |->  B ) `  x ) )
1715, 16eleq12d 2503 . . . . 5  |-  ( y  =  x  ->  (
( f `  y
)  e.  ( ( x  e.  A  |->  B ) `  y )  <-> 
( f `  x
)  e.  ( ( x  e.  A  |->  B ) `  x ) ) )
1813, 14, 17cbvral 2920 . . . 4  |-  ( A. y  e.  A  (
f `  y )  e.  ( ( x  e.  A  |->  B ) `  y )  <->  A. x  e.  A  ( f `  x )  e.  ( ( x  e.  A  |->  B ) `  x
) )
19 simplr 732 . . . . . . . . . 10  |-  ( ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  /\  A. x  e.  A  ( f `  x )  e.  ( ( x  e.  A  |->  B ) `
 x ) )  ->  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )
20 simplr 732 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( X  e. AC  A  /\  x  e.  A )  /\  B  C_  X )  ->  x  e.  A
)
21 simpll 731 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( X  e. AC  A  /\  x  e.  A )  /\  B  C_  X )  ->  X  e. AC  A )
22 simpr 448 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( X  e. AC  A  /\  x  e.  A )  /\  B  C_  X )  ->  B  C_  X
)
2321, 22ssexd 4342 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( X  e. AC  A  /\  x  e.  A )  /\  B  C_  X )  ->  B  e.  _V )
247fvmpt2 5803 . . . . . . . . . . . . . . . . . 18  |-  ( ( x  e.  A  /\  B  e.  _V )  ->  ( ( x  e.  A  |->  B ) `  x )  =  B )
2520, 23, 24syl2anc 643 . . . . . . . . . . . . . . . . 17  |-  ( ( ( X  e. AC  A  /\  x  e.  A )  /\  B  C_  X )  ->  ( ( x  e.  A  |->  B ) `
 x )  =  B )
2625eleq2d 2502 . . . . . . . . . . . . . . . 16  |-  ( ( ( X  e. AC  A  /\  x  e.  A )  /\  B  C_  X )  ->  ( ( f `
 x )  e.  ( ( x  e.  A  |->  B ) `  x )  <->  ( f `  x )  e.  B
) )
2726ex 424 . . . . . . . . . . . . . . 15  |-  ( ( X  e. AC  A  /\  x  e.  A )  ->  ( B  C_  X  ->  ( ( f `  x )  e.  ( ( x  e.  A  |->  B ) `  x
)  <->  ( f `  x )  e.  B
) ) )
2827adantrd 455 . . . . . . . . . . . . . 14  |-  ( ( X  e. AC  A  /\  x  e.  A )  ->  ( ( B  C_  X  /\  B  =/=  (/) )  -> 
( ( f `  x )  e.  ( ( x  e.  A  |->  B ) `  x
)  <->  ( f `  x )  e.  B
) ) )
2928ralimdva 2776 . . . . . . . . . . . . 13  |-  ( X  e. AC  A  ->  ( A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) )  ->  A. x  e.  A  ( (
f `  x )  e.  ( ( x  e.  A  |->  B ) `  x )  <->  ( f `  x )  e.  B
) ) )
3029imp 419 . . . . . . . . . . . 12  |-  ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  ->  A. x  e.  A  ( ( f `  x )  e.  ( ( x  e.  A  |->  B ) `  x
)  <->  ( f `  x )  e.  B
) )
31 ralbi 2834 . . . . . . . . . . . 12  |-  ( A. x  e.  A  (
( f `  x
)  e.  ( ( x  e.  A  |->  B ) `  x )  <-> 
( f `  x
)  e.  B )  ->  ( A. x  e.  A  ( f `  x )  e.  ( ( x  e.  A  |->  B ) `  x
)  <->  A. x  e.  A  ( f `  x
)  e.  B ) )
3230, 31syl 16 . . . . . . . . . . 11  |-  ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  -> 
( A. x  e.  A  ( f `  x )  e.  ( ( x  e.  A  |->  B ) `  x
)  <->  A. x  e.  A  ( f `  x
)  e.  B ) )
3332biimpa 471 . . . . . . . . . 10  |-  ( ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  /\  A. x  e.  A  ( f `  x )  e.  ( ( x  e.  A  |->  B ) `
 x ) )  ->  A. x  e.  A  ( f `  x
)  e.  B )
34 ssel 3334 . . . . . . . . . . . 12  |-  ( B 
C_  X  ->  (
( f `  x
)  e.  B  -> 
( f `  x
)  e.  X ) )
3534adantr 452 . . . . . . . . . . 11  |-  ( ( B  C_  X  /\  B  =/=  (/) )  ->  (
( f `  x
)  e.  B  -> 
( f `  x
)  e.  X ) )
3635ral2imi 2774 . . . . . . . . . 10  |-  ( A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) )  ->  ( A. x  e.  A  ( f `  x
)  e.  B  ->  A. x  e.  A  ( f `  x
)  e.  X ) )
3719, 33, 36sylc 58 . . . . . . . . 9  |-  ( ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  /\  A. x  e.  A  ( f `  x )  e.  ( ( x  e.  A  |->  B ) `
 x ) )  ->  A. x  e.  A  ( f `  x
)  e.  X )
38 fveq2 5719 . . . . . . . . . . 11  |-  ( x  =  y  ->  (
f `  x )  =  ( f `  y ) )
3938eleq1d 2501 . . . . . . . . . 10  |-  ( x  =  y  ->  (
( f `  x
)  e.  X  <->  ( f `  y )  e.  X
) )
4039rspccva 3043 . . . . . . . . 9  |-  ( ( A. x  e.  A  ( f `  x
)  e.  X  /\  y  e.  A )  ->  ( f `  y
)  e.  X )
4137, 40sylan 458 . . . . . . . 8  |-  ( ( ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  /\  A. x  e.  A  ( f `  x )  e.  ( ( x  e.  A  |->  B ) `  x
) )  /\  y  e.  A )  ->  (
f `  y )  e.  X )
42 eqid 2435 . . . . . . . 8  |-  ( y  e.  A  |->  ( f `
 y ) )  =  ( y  e.  A  |->  ( f `  y ) )
4341, 42fmptd 5884 . . . . . . 7  |-  ( ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  /\  A. x  e.  A  ( f `  x )  e.  ( ( x  e.  A  |->  B ) `
 x ) )  ->  ( y  e.  A  |->  ( f `  y ) ) : A --> X )
44 simpll 731 . . . . . . . 8  |-  ( ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  /\  A. x  e.  A  ( f `  x )  e.  ( ( x  e.  A  |->  B ) `
 x ) )  ->  X  e. AC  A )
45 acnrcl 7912 . . . . . . . 8  |-  ( X  e. AC  A  ->  A  e. 
_V )
4644, 45syl 16 . . . . . . 7  |-  ( ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  /\  A. x  e.  A  ( f `  x )  e.  ( ( x  e.  A  |->  B ) `
 x ) )  ->  A  e.  _V )
47 fex2 5594 . . . . . . 7  |-  ( ( ( y  e.  A  |->  ( f `  y
) ) : A --> X  /\  A  e.  _V  /\  X  e. AC  A )  ->  ( y  e.  A  |->  ( f `  y
) )  e.  _V )
4843, 46, 44, 47syl3anc 1184 . . . . . 6  |-  ( ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  /\  A. x  e.  A  ( f `  x )  e.  ( ( x  e.  A  |->  B ) `
 x ) )  ->  ( y  e.  A  |->  ( f `  y ) )  e. 
_V )
49 fvex 5733 . . . . . . . . . . 11  |-  ( f `
 x )  e. 
_V
5015, 42, 49fvmpt 5797 . . . . . . . . . 10  |-  ( x  e.  A  ->  (
( y  e.  A  |->  ( f `  y
) ) `  x
)  =  ( f `
 x ) )
5150eleq1d 2501 . . . . . . . . 9  |-  ( x  e.  A  ->  (
( ( y  e.  A  |->  ( f `  y ) ) `  x )  e.  B  <->  ( f `  x )  e.  B ) )
5251ralbiia 2729 . . . . . . . 8  |-  ( A. x  e.  A  (
( y  e.  A  |->  ( f `  y
) ) `  x
)  e.  B  <->  A. x  e.  A  ( f `  x )  e.  B
)
5333, 52sylibr 204 . . . . . . 7  |-  ( ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  /\  A. x  e.  A  ( f `  x )  e.  ( ( x  e.  A  |->  B ) `
 x ) )  ->  A. x  e.  A  ( ( y  e.  A  |->  ( f `  y ) ) `  x )  e.  B
)
5443, 53jca 519 . . . . . 6  |-  ( ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  /\  A. x  e.  A  ( f `  x )  e.  ( ( x  e.  A  |->  B ) `
 x ) )  ->  ( ( y  e.  A  |->  ( f `
 y ) ) : A --> X  /\  A. x  e.  A  ( ( y  e.  A  |->  ( f `  y
) ) `  x
)  e.  B ) )
55 feq1 5567 . . . . . . . 8  |-  ( g  =  ( y  e.  A  |->  ( f `  y ) )  -> 
( g : A --> X 
<->  ( y  e.  A  |->  ( f `  y
) ) : A --> X ) )
56 fveq1 5718 . . . . . . . . . 10  |-  ( g  =  ( y  e.  A  |->  ( f `  y ) )  -> 
( g `  x
)  =  ( ( y  e.  A  |->  ( f `  y ) ) `  x ) )
5756eleq1d 2501 . . . . . . . . 9  |-  ( g  =  ( y  e.  A  |->  ( f `  y ) )  -> 
( ( g `  x )  e.  B  <->  ( ( y  e.  A  |->  ( f `  y
) ) `  x
)  e.  B ) )
5857ralbidv 2717 . . . . . . . 8  |-  ( g  =  ( y  e.  A  |->  ( f `  y ) )  -> 
( A. x  e.  A  ( g `  x )  e.  B  <->  A. x  e.  A  ( ( y  e.  A  |->  ( f `  y
) ) `  x
)  e.  B ) )
5955, 58anbi12d 692 . . . . . . 7  |-  ( g  =  ( y  e.  A  |->  ( f `  y ) )  -> 
( ( g : A --> X  /\  A. x  e.  A  (
g `  x )  e.  B )  <->  ( (
y  e.  A  |->  ( f `  y ) ) : A --> X  /\  A. x  e.  A  ( ( y  e.  A  |->  ( f `  y
) ) `  x
)  e.  B ) ) )
6059spcegv 3029 . . . . . 6  |-  ( ( y  e.  A  |->  ( f `  y ) )  e.  _V  ->  ( ( ( y  e.  A  |->  ( f `  y ) ) : A --> X  /\  A. x  e.  A  (
( y  e.  A  |->  ( f `  y
) ) `  x
)  e.  B )  ->  E. g ( g : A --> X  /\  A. x  e.  A  ( g `  x )  e.  B ) ) )
6148, 54, 60sylc 58 . . . . 5  |-  ( ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  /\  A. x  e.  A  ( f `  x )  e.  ( ( x  e.  A  |->  B ) `
 x ) )  ->  E. g ( g : A --> X  /\  A. x  e.  A  ( g `  x )  e.  B ) )
6261ex 424 . . . 4  |-  ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  -> 
( A. x  e.  A  ( f `  x )  e.  ( ( x  e.  A  |->  B ) `  x
)  ->  E. g
( g : A --> X  /\  A. x  e.  A  ( g `  x )  e.  B
) ) )
6318, 62syl5bi 209 . . 3  |-  ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  -> 
( A. y  e.  A  ( f `  y )  e.  ( ( x  e.  A  |->  B ) `  y
)  ->  E. g
( g : A --> X  /\  A. x  e.  A  ( g `  x )  e.  B
) ) )
6463exlimdv 1646 . 2  |-  ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  -> 
( E. f A. y  e.  A  (
f `  y )  e.  ( ( x  e.  A  |->  B ) `  y )  ->  E. g
( g : A --> X  /\  A. x  e.  A  ( g `  x )  e.  B
) ) )
6511, 64mpd 15 1  |-  ( ( X  e. AC  A  /\  A. x  e.  A  ( B  C_  X  /\  B  =/=  (/) ) )  ->  E. g ( g : A --> X  /\  A. x  e.  A  (
g `  x )  e.  B ) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 177    /\ wa 359   E.wex 1550    = wceq 1652    e. wcel 1725    =/= wne 2598   A.wral 2697   _Vcvv 2948    \ cdif 3309    C_ wss 3312   (/)c0 3620   ~Pcpw 3791   {csn 3806    e. cmpt 4258   -->wf 5441   ` cfv 5445  AC wacn 7814
This theorem is referenced by:  acni3  7917  acndom  7921  acnnum  7922  acndom2  7924  dfacacn  8010
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1555  ax-5 1566  ax-17 1626  ax-9 1666  ax-8 1687  ax-13 1727  ax-14 1729  ax-6 1744  ax-7 1749  ax-11 1761  ax-12 1950  ax-ext 2416  ax-sep 4322  ax-nul 4330  ax-pow 4369  ax-pr 4395  ax-un 4692
This theorem depends on definitions:  df-bi 178  df-or 360  df-an 361  df-3an 938  df-tru 1328  df-ex 1551  df-nf 1554  df-sb 1659  df-eu 2284  df-mo 2285  df-clab 2422  df-cleq 2428  df-clel 2431  df-nfc 2560  df-ne 2600  df-ral 2702  df-rex 2703  df-rab 2706  df-v 2950  df-sbc 3154  df-csb 3244  df-dif 3315  df-un 3317  df-in 3319  df-ss 3326  df-nul 3621  df-if 3732  df-pw 3793  df-sn 3812  df-pr 3813  df-op 3815  df-uni 4008  df-br 4205  df-opab 4259  df-mpt 4260  df-id 4490  df-xp 4875  df-rel 4876  df-cnv 4877  df-co 4878  df-dm 4879  df-rn 4880  df-res 4881  df-ima 4882  df-iota 5409  df-fun 5447  df-fn 5448  df-f 5449  df-fv 5453  df-ov 6075  df-oprab 6076  df-mpt2 6077  df-map 7011  df-acn 7818
  Copyright terms: Public domain W3C validator