This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: The "embedding functor" from the category of sets into the category of extensible structures which sends each set to an extensible structure consisting of the base set slot only is full. (Contributed by AV, 1-Apr-2020)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | funcsetcestrc.s | |- S = ( SetCat ` U ) |
|
| funcsetcestrc.c | |- C = ( Base ` S ) |
||
| funcsetcestrc.f | |- ( ph -> F = ( x e. C |-> { <. ( Base ` ndx ) , x >. } ) ) |
||
| funcsetcestrc.u | |- ( ph -> U e. WUni ) |
||
| funcsetcestrc.o | |- ( ph -> _om e. U ) |
||
| funcsetcestrc.g | |- ( ph -> G = ( x e. C , y e. C |-> ( _I |` ( y ^m x ) ) ) ) |
||
| funcsetcestrc.e | |- E = ( ExtStrCat ` U ) |
||
| Assertion | fullsetcestrc | |- ( ph -> F ( S Full E ) G ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | funcsetcestrc.s | |- S = ( SetCat ` U ) |
|
| 2 | funcsetcestrc.c | |- C = ( Base ` S ) |
|
| 3 | funcsetcestrc.f | |- ( ph -> F = ( x e. C |-> { <. ( Base ` ndx ) , x >. } ) ) |
|
| 4 | funcsetcestrc.u | |- ( ph -> U e. WUni ) |
|
| 5 | funcsetcestrc.o | |- ( ph -> _om e. U ) |
|
| 6 | funcsetcestrc.g | |- ( ph -> G = ( x e. C , y e. C |-> ( _I |` ( y ^m x ) ) ) ) |
|
| 7 | funcsetcestrc.e | |- E = ( ExtStrCat ` U ) |
|
| 8 | 1 2 3 4 5 6 7 | funcsetcestrc | |- ( ph -> F ( S Func E ) G ) |
| 9 | 1 2 3 4 5 6 7 | funcsetcestrclem8 | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( a G b ) : ( a ( Hom ` S ) b ) --> ( ( F ` a ) ( Hom ` E ) ( F ` b ) ) ) |
| 10 | 4 | adantr | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> U e. WUni ) |
| 11 | eqid | |- ( Hom ` E ) = ( Hom ` E ) |
|
| 12 | 1 2 3 4 5 | funcsetcestrclem2 | |- ( ( ph /\ a e. C ) -> ( F ` a ) e. U ) |
| 13 | 12 | adantrr | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( F ` a ) e. U ) |
| 14 | 1 2 3 4 5 | funcsetcestrclem2 | |- ( ( ph /\ b e. C ) -> ( F ` b ) e. U ) |
| 15 | 14 | adantrl | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( F ` b ) e. U ) |
| 16 | eqid | |- ( Base ` ( F ` a ) ) = ( Base ` ( F ` a ) ) |
|
| 17 | eqid | |- ( Base ` ( F ` b ) ) = ( Base ` ( F ` b ) ) |
|
| 18 | 7 10 11 13 15 16 17 | elestrchom | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( h e. ( ( F ` a ) ( Hom ` E ) ( F ` b ) ) <-> h : ( Base ` ( F ` a ) ) --> ( Base ` ( F ` b ) ) ) ) |
| 19 | 1 2 3 | funcsetcestrclem1 | |- ( ( ph /\ a e. C ) -> ( F ` a ) = { <. ( Base ` ndx ) , a >. } ) |
| 20 | 19 | adantrr | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( F ` a ) = { <. ( Base ` ndx ) , a >. } ) |
| 21 | 20 | fveq2d | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( Base ` ( F ` a ) ) = ( Base ` { <. ( Base ` ndx ) , a >. } ) ) |
| 22 | eqid | |- { <. ( Base ` ndx ) , a >. } = { <. ( Base ` ndx ) , a >. } |
|
| 23 | 22 | 1strbas | |- ( a e. C -> a = ( Base ` { <. ( Base ` ndx ) , a >. } ) ) |
| 24 | 23 | ad2antrl | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> a = ( Base ` { <. ( Base ` ndx ) , a >. } ) ) |
| 25 | 21 24 | eqtr4d | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( Base ` ( F ` a ) ) = a ) |
| 26 | 1 2 3 | funcsetcestrclem1 | |- ( ( ph /\ b e. C ) -> ( F ` b ) = { <. ( Base ` ndx ) , b >. } ) |
| 27 | 26 | adantrl | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( F ` b ) = { <. ( Base ` ndx ) , b >. } ) |
| 28 | 27 | fveq2d | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( Base ` ( F ` b ) ) = ( Base ` { <. ( Base ` ndx ) , b >. } ) ) |
| 29 | eqid | |- { <. ( Base ` ndx ) , b >. } = { <. ( Base ` ndx ) , b >. } |
|
| 30 | 29 | 1strbas | |- ( b e. C -> b = ( Base ` { <. ( Base ` ndx ) , b >. } ) ) |
| 31 | 30 | ad2antll | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> b = ( Base ` { <. ( Base ` ndx ) , b >. } ) ) |
| 32 | 28 31 | eqtr4d | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( Base ` ( F ` b ) ) = b ) |
| 33 | 25 32 | feq23d | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( h : ( Base ` ( F ` a ) ) --> ( Base ` ( F ` b ) ) <-> h : a --> b ) ) |
| 34 | simpr | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( a e. C /\ b e. C ) ) |
|
| 35 | 34 | ancomd | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( b e. C /\ a e. C ) ) |
| 36 | elmapg | |- ( ( b e. C /\ a e. C ) -> ( h e. ( b ^m a ) <-> h : a --> b ) ) |
|
| 37 | 35 36 | syl | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( h e. ( b ^m a ) <-> h : a --> b ) ) |
| 38 | 37 | biimpar | |- ( ( ( ph /\ ( a e. C /\ b e. C ) ) /\ h : a --> b ) -> h e. ( b ^m a ) ) |
| 39 | equequ2 | |- ( k = h -> ( h = k <-> h = h ) ) |
|
| 40 | 39 | adantl | |- ( ( ( ( ph /\ ( a e. C /\ b e. C ) ) /\ h : a --> b ) /\ k = h ) -> ( h = k <-> h = h ) ) |
| 41 | eqidd | |- ( ( ( ph /\ ( a e. C /\ b e. C ) ) /\ h : a --> b ) -> h = h ) |
|
| 42 | 38 40 41 | rspcedvd | |- ( ( ( ph /\ ( a e. C /\ b e. C ) ) /\ h : a --> b ) -> E. k e. ( b ^m a ) h = k ) |
| 43 | 1 2 3 4 5 6 | funcsetcestrclem6 | |- ( ( ph /\ ( a e. C /\ b e. C ) /\ k e. ( b ^m a ) ) -> ( ( a G b ) ` k ) = k ) |
| 44 | 43 | 3expa | |- ( ( ( ph /\ ( a e. C /\ b e. C ) ) /\ k e. ( b ^m a ) ) -> ( ( a G b ) ` k ) = k ) |
| 45 | 44 | eqeq2d | |- ( ( ( ph /\ ( a e. C /\ b e. C ) ) /\ k e. ( b ^m a ) ) -> ( h = ( ( a G b ) ` k ) <-> h = k ) ) |
| 46 | 45 | rexbidva | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( E. k e. ( b ^m a ) h = ( ( a G b ) ` k ) <-> E. k e. ( b ^m a ) h = k ) ) |
| 47 | 46 | adantr | |- ( ( ( ph /\ ( a e. C /\ b e. C ) ) /\ h : a --> b ) -> ( E. k e. ( b ^m a ) h = ( ( a G b ) ` k ) <-> E. k e. ( b ^m a ) h = k ) ) |
| 48 | 42 47 | mpbird | |- ( ( ( ph /\ ( a e. C /\ b e. C ) ) /\ h : a --> b ) -> E. k e. ( b ^m a ) h = ( ( a G b ) ` k ) ) |
| 49 | eqid | |- ( Hom ` S ) = ( Hom ` S ) |
|
| 50 | 1 4 | setcbas | |- ( ph -> U = ( Base ` S ) ) |
| 51 | 2 50 | eqtr4id | |- ( ph -> C = U ) |
| 52 | 51 | eleq2d | |- ( ph -> ( a e. C <-> a e. U ) ) |
| 53 | 52 | biimpcd | |- ( a e. C -> ( ph -> a e. U ) ) |
| 54 | 53 | adantr | |- ( ( a e. C /\ b e. C ) -> ( ph -> a e. U ) ) |
| 55 | 54 | impcom | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> a e. U ) |
| 56 | 51 | eleq2d | |- ( ph -> ( b e. C <-> b e. U ) ) |
| 57 | 56 | biimpcd | |- ( b e. C -> ( ph -> b e. U ) ) |
| 58 | 57 | adantl | |- ( ( a e. C /\ b e. C ) -> ( ph -> b e. U ) ) |
| 59 | 58 | impcom | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> b e. U ) |
| 60 | 1 10 49 55 59 | setchom | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( a ( Hom ` S ) b ) = ( b ^m a ) ) |
| 61 | 60 | rexeqdv | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( E. k e. ( a ( Hom ` S ) b ) h = ( ( a G b ) ` k ) <-> E. k e. ( b ^m a ) h = ( ( a G b ) ` k ) ) ) |
| 62 | 61 | adantr | |- ( ( ( ph /\ ( a e. C /\ b e. C ) ) /\ h : a --> b ) -> ( E. k e. ( a ( Hom ` S ) b ) h = ( ( a G b ) ` k ) <-> E. k e. ( b ^m a ) h = ( ( a G b ) ` k ) ) ) |
| 63 | 48 62 | mpbird | |- ( ( ( ph /\ ( a e. C /\ b e. C ) ) /\ h : a --> b ) -> E. k e. ( a ( Hom ` S ) b ) h = ( ( a G b ) ` k ) ) |
| 64 | 63 | ex | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( h : a --> b -> E. k e. ( a ( Hom ` S ) b ) h = ( ( a G b ) ` k ) ) ) |
| 65 | 33 64 | sylbid | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( h : ( Base ` ( F ` a ) ) --> ( Base ` ( F ` b ) ) -> E. k e. ( a ( Hom ` S ) b ) h = ( ( a G b ) ` k ) ) ) |
| 66 | 18 65 | sylbid | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( h e. ( ( F ` a ) ( Hom ` E ) ( F ` b ) ) -> E. k e. ( a ( Hom ` S ) b ) h = ( ( a G b ) ` k ) ) ) |
| 67 | 66 | ralrimiv | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> A. h e. ( ( F ` a ) ( Hom ` E ) ( F ` b ) ) E. k e. ( a ( Hom ` S ) b ) h = ( ( a G b ) ` k ) ) |
| 68 | dffo3 | |- ( ( a G b ) : ( a ( Hom ` S ) b ) -onto-> ( ( F ` a ) ( Hom ` E ) ( F ` b ) ) <-> ( ( a G b ) : ( a ( Hom ` S ) b ) --> ( ( F ` a ) ( Hom ` E ) ( F ` b ) ) /\ A. h e. ( ( F ` a ) ( Hom ` E ) ( F ` b ) ) E. k e. ( a ( Hom ` S ) b ) h = ( ( a G b ) ` k ) ) ) |
|
| 69 | 9 67 68 | sylanbrc | |- ( ( ph /\ ( a e. C /\ b e. C ) ) -> ( a G b ) : ( a ( Hom ` S ) b ) -onto-> ( ( F ` a ) ( Hom ` E ) ( F ` b ) ) ) |
| 70 | 69 | ralrimivva | |- ( ph -> A. a e. C A. b e. C ( a G b ) : ( a ( Hom ` S ) b ) -onto-> ( ( F ` a ) ( Hom ` E ) ( F ` b ) ) ) |
| 71 | 2 11 49 | isfull2 | |- ( F ( S Full E ) G <-> ( F ( S Func E ) G /\ A. a e. C A. b e. C ( a G b ) : ( a ( Hom ` S ) b ) -onto-> ( ( F ` a ) ( Hom ` E ) ( F ` b ) ) ) ) |
| 72 | 8 70 71 | sylanbrc | |- ( ph -> F ( S Full E ) G ) |