Metamath Proof Explorer


Theorem funcestrcsetclem8

Description: Lemma 8 for funcestrcsetc . (Contributed by AV, 15-Feb-2020)

Ref Expression
Hypotheses funcestrcsetc.e
|- E = ( ExtStrCat ` U )
funcestrcsetc.s
|- S = ( SetCat ` U )
funcestrcsetc.b
|- B = ( Base ` E )
funcestrcsetc.c
|- C = ( Base ` S )
funcestrcsetc.u
|- ( ph -> U e. WUni )
funcestrcsetc.f
|- ( ph -> F = ( x e. B |-> ( Base ` x ) ) )
funcestrcsetc.g
|- ( ph -> G = ( x e. B , y e. B |-> ( _I |` ( ( Base ` y ) ^m ( Base ` x ) ) ) ) )
Assertion funcestrcsetclem8
|- ( ( ph /\ ( X e. B /\ Y e. B ) ) -> ( X G Y ) : ( X ( Hom ` E ) Y ) --> ( ( F ` X ) ( Hom ` S ) ( F ` Y ) ) )

Proof

Step Hyp Ref Expression
1 funcestrcsetc.e
 |-  E = ( ExtStrCat ` U )
2 funcestrcsetc.s
 |-  S = ( SetCat ` U )
3 funcestrcsetc.b
 |-  B = ( Base ` E )
4 funcestrcsetc.c
 |-  C = ( Base ` S )
5 funcestrcsetc.u
 |-  ( ph -> U e. WUni )
6 funcestrcsetc.f
 |-  ( ph -> F = ( x e. B |-> ( Base ` x ) ) )
7 funcestrcsetc.g
 |-  ( ph -> G = ( x e. B , y e. B |-> ( _I |` ( ( Base ` y ) ^m ( Base ` x ) ) ) ) )
8 f1oi
 |-  ( _I |` ( ( Base ` Y ) ^m ( Base ` X ) ) ) : ( ( Base ` Y ) ^m ( Base ` X ) ) -1-1-onto-> ( ( Base ` Y ) ^m ( Base ` X ) )
9 f1of
 |-  ( ( _I |` ( ( Base ` Y ) ^m ( Base ` X ) ) ) : ( ( Base ` Y ) ^m ( Base ` X ) ) -1-1-onto-> ( ( Base ` Y ) ^m ( Base ` X ) ) -> ( _I |` ( ( Base ` Y ) ^m ( Base ` X ) ) ) : ( ( Base ` Y ) ^m ( Base ` X ) ) --> ( ( Base ` Y ) ^m ( Base ` X ) ) )
10 8 9 mp1i
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> ( _I |` ( ( Base ` Y ) ^m ( Base ` X ) ) ) : ( ( Base ` Y ) ^m ( Base ` X ) ) --> ( ( Base ` Y ) ^m ( Base ` X ) ) )
11 elmapi
 |-  ( f e. ( ( Base ` Y ) ^m ( Base ` X ) ) -> f : ( Base ` X ) --> ( Base ` Y ) )
12 fvex
 |-  ( Base ` Y ) e. _V
13 fvex
 |-  ( Base ` X ) e. _V
14 12 13 pm3.2i
 |-  ( ( Base ` Y ) e. _V /\ ( Base ` X ) e. _V )
15 elmapg
 |-  ( ( ( Base ` Y ) e. _V /\ ( Base ` X ) e. _V ) -> ( f e. ( ( Base ` Y ) ^m ( Base ` X ) ) <-> f : ( Base ` X ) --> ( Base ` Y ) ) )
16 15 bicomd
 |-  ( ( ( Base ` Y ) e. _V /\ ( Base ` X ) e. _V ) -> ( f : ( Base ` X ) --> ( Base ` Y ) <-> f e. ( ( Base ` Y ) ^m ( Base ` X ) ) ) )
17 14 16 mp1i
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> ( f : ( Base ` X ) --> ( Base ` Y ) <-> f e. ( ( Base ` Y ) ^m ( Base ` X ) ) ) )
18 17 biimpa
 |-  ( ( ( ph /\ ( X e. B /\ Y e. B ) ) /\ f : ( Base ` X ) --> ( Base ` Y ) ) -> f e. ( ( Base ` Y ) ^m ( Base ` X ) ) )
19 1 2 3 4 5 6 funcestrcsetclem1
 |-  ( ( ph /\ Y e. B ) -> ( F ` Y ) = ( Base ` Y ) )
20 19 adantrl
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> ( F ` Y ) = ( Base ` Y ) )
21 1 2 3 4 5 6 funcestrcsetclem1
 |-  ( ( ph /\ X e. B ) -> ( F ` X ) = ( Base ` X ) )
22 21 adantrr
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> ( F ` X ) = ( Base ` X ) )
23 20 22 oveq12d
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> ( ( F ` Y ) ^m ( F ` X ) ) = ( ( Base ` Y ) ^m ( Base ` X ) ) )
24 23 adantr
 |-  ( ( ( ph /\ ( X e. B /\ Y e. B ) ) /\ f : ( Base ` X ) --> ( Base ` Y ) ) -> ( ( F ` Y ) ^m ( F ` X ) ) = ( ( Base ` Y ) ^m ( Base ` X ) ) )
25 18 24 eleqtrrd
 |-  ( ( ( ph /\ ( X e. B /\ Y e. B ) ) /\ f : ( Base ` X ) --> ( Base ` Y ) ) -> f e. ( ( F ` Y ) ^m ( F ` X ) ) )
26 25 ex
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> ( f : ( Base ` X ) --> ( Base ` Y ) -> f e. ( ( F ` Y ) ^m ( F ` X ) ) ) )
27 11 26 syl5
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> ( f e. ( ( Base ` Y ) ^m ( Base ` X ) ) -> f e. ( ( F ` Y ) ^m ( F ` X ) ) ) )
28 27 ssrdv
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> ( ( Base ` Y ) ^m ( Base ` X ) ) C_ ( ( F ` Y ) ^m ( F ` X ) ) )
29 10 28 fssd
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> ( _I |` ( ( Base ` Y ) ^m ( Base ` X ) ) ) : ( ( Base ` Y ) ^m ( Base ` X ) ) --> ( ( F ` Y ) ^m ( F ` X ) ) )
30 eqid
 |-  ( Base ` X ) = ( Base ` X )
31 eqid
 |-  ( Base ` Y ) = ( Base ` Y )
32 1 2 3 4 5 6 7 30 31 funcestrcsetclem5
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> ( X G Y ) = ( _I |` ( ( Base ` Y ) ^m ( Base ` X ) ) ) )
33 5 adantr
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> U e. WUni )
34 eqid
 |-  ( Hom ` E ) = ( Hom ` E )
35 1 5 estrcbas
 |-  ( ph -> U = ( Base ` E ) )
36 3 35 eqtr4id
 |-  ( ph -> B = U )
37 36 eleq2d
 |-  ( ph -> ( X e. B <-> X e. U ) )
38 37 biimpcd
 |-  ( X e. B -> ( ph -> X e. U ) )
39 38 adantr
 |-  ( ( X e. B /\ Y e. B ) -> ( ph -> X e. U ) )
40 39 impcom
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> X e. U )
41 36 eleq2d
 |-  ( ph -> ( Y e. B <-> Y e. U ) )
42 41 biimpd
 |-  ( ph -> ( Y e. B -> Y e. U ) )
43 42 adantld
 |-  ( ph -> ( ( X e. B /\ Y e. B ) -> Y e. U ) )
44 43 imp
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> Y e. U )
45 1 33 34 40 44 30 31 estrchom
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> ( X ( Hom ` E ) Y ) = ( ( Base ` Y ) ^m ( Base ` X ) ) )
46 eqid
 |-  ( Hom ` S ) = ( Hom ` S )
47 1 2 3 4 5 6 funcestrcsetclem2
 |-  ( ( ph /\ X e. B ) -> ( F ` X ) e. U )
48 47 adantrr
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> ( F ` X ) e. U )
49 1 2 3 4 5 6 funcestrcsetclem2
 |-  ( ( ph /\ Y e. B ) -> ( F ` Y ) e. U )
50 49 adantrl
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> ( F ` Y ) e. U )
51 2 33 46 48 50 setchom
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> ( ( F ` X ) ( Hom ` S ) ( F ` Y ) ) = ( ( F ` Y ) ^m ( F ` X ) ) )
52 32 45 51 feq123d
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> ( ( X G Y ) : ( X ( Hom ` E ) Y ) --> ( ( F ` X ) ( Hom ` S ) ( F ` Y ) ) <-> ( _I |` ( ( Base ` Y ) ^m ( Base ` X ) ) ) : ( ( Base ` Y ) ^m ( Base ` X ) ) --> ( ( F ` Y ) ^m ( F ` X ) ) ) )
53 29 52 mpbird
 |-  ( ( ph /\ ( X e. B /\ Y e. B ) ) -> ( X G Y ) : ( X ( Hom ` E ) Y ) --> ( ( F ` X ) ( Hom ` S ) ( F ` Y ) ) )