Metamath Proof Explorer


Theorem gblacfnacd

Description: If G is a global choice function, then the Axiom of Choice (in the form of the right-hand side of dfac4 ) holds. Note that G must be a proper class by fndmexb . This means we cannot show that the existence of a class that behaves as a global choice function is sufficient because we only have existential quantifiers for sets, not (proper) classes. However, if a class variant of exlimiv were available, then it could be used alongside the closed form of this theorem to prove that result. (Contributed by BTernaryTau, 12-Dec-2024)

Ref Expression
Hypotheses gblacfnacd.1
|- ( ph -> G Fn _V )
gblacfnacd.2
|- ( ph -> A. z ( z =/= (/) -> ( G ` z ) e. z ) )
Assertion gblacfnacd
|- ( ph -> A. x E. f ( f Fn x /\ A. z e. x ( z =/= (/) -> ( f ` z ) e. z ) ) )

Proof

Step Hyp Ref Expression
1 gblacfnacd.1
 |-  ( ph -> G Fn _V )
2 gblacfnacd.2
 |-  ( ph -> A. z ( z =/= (/) -> ( G ` z ) e. z ) )
3 fnfun
 |-  ( G Fn _V -> Fun G )
4 resfunexg
 |-  ( ( Fun G /\ x e. _V ) -> ( G |` x ) e. _V )
5 4 elvd
 |-  ( Fun G -> ( G |` x ) e. _V )
6 1 3 5 3syl
 |-  ( ph -> ( G |` x ) e. _V )
7 ssv
 |-  x C_ _V
8 fnssres
 |-  ( ( G Fn _V /\ x C_ _V ) -> ( G |` x ) Fn x )
9 1 7 8 sylancl
 |-  ( ph -> ( G |` x ) Fn x )
10 2 19.21bi
 |-  ( ph -> ( z =/= (/) -> ( G ` z ) e. z ) )
11 fvres
 |-  ( z e. x -> ( ( G |` x ) ` z ) = ( G ` z ) )
12 11 eleq1d
 |-  ( z e. x -> ( ( ( G |` x ) ` z ) e. z <-> ( G ` z ) e. z ) )
13 12 imbi2d
 |-  ( z e. x -> ( ( z =/= (/) -> ( ( G |` x ) ` z ) e. z ) <-> ( z =/= (/) -> ( G ` z ) e. z ) ) )
14 10 13 syl5ibrcom
 |-  ( ph -> ( z e. x -> ( z =/= (/) -> ( ( G |` x ) ` z ) e. z ) ) )
15 14 ralrimiv
 |-  ( ph -> A. z e. x ( z =/= (/) -> ( ( G |` x ) ` z ) e. z ) )
16 9 15 jca
 |-  ( ph -> ( ( G |` x ) Fn x /\ A. z e. x ( z =/= (/) -> ( ( G |` x ) ` z ) e. z ) ) )
17 fneq1
 |-  ( f = ( G |` x ) -> ( f Fn x <-> ( G |` x ) Fn x ) )
18 fveq1
 |-  ( f = ( G |` x ) -> ( f ` z ) = ( ( G |` x ) ` z ) )
19 18 eleq1d
 |-  ( f = ( G |` x ) -> ( ( f ` z ) e. z <-> ( ( G |` x ) ` z ) e. z ) )
20 19 imbi2d
 |-  ( f = ( G |` x ) -> ( ( z =/= (/) -> ( f ` z ) e. z ) <-> ( z =/= (/) -> ( ( G |` x ) ` z ) e. z ) ) )
21 20 ralbidv
 |-  ( f = ( G |` x ) -> ( A. z e. x ( z =/= (/) -> ( f ` z ) e. z ) <-> A. z e. x ( z =/= (/) -> ( ( G |` x ) ` z ) e. z ) ) )
22 17 21 anbi12d
 |-  ( f = ( G |` x ) -> ( ( f Fn x /\ A. z e. x ( z =/= (/) -> ( f ` z ) e. z ) ) <-> ( ( G |` x ) Fn x /\ A. z e. x ( z =/= (/) -> ( ( G |` x ) ` z ) e. z ) ) ) )
23 6 16 22 spcedv
 |-  ( ph -> E. f ( f Fn x /\ A. z e. x ( z =/= (/) -> ( f ` z ) e. z ) ) )
24 23 alrimiv
 |-  ( ph -> A. x E. f ( f Fn x /\ A. z e. x ( z =/= (/) -> ( f ` z ) e. z ) ) )