let A, B, C be Category; :: thesis: distribute A,B,C is isomorphic
thus distribute A,B,C is one-to-one :: according to ISOCAT_1:def 3 :: thesis: rng (distribute A,B,C) = the carrier' of [:(Functors A,B),(Functors A,C):]
proof
let x1, x2 be set ; :: according to FUNCT_1:def 8 :: thesis: ( not x1 in proj1 (distribute A,B,C) or not x2 in proj1 (distribute A,B,C) or not (distribute A,B,C) . x1 = (distribute A,B,C) . x2 or x1 = x2 )
assume x1 in dom (distribute A,B,C) ; :: thesis: ( not x2 in proj1 (distribute A,B,C) or not (distribute A,B,C) . x1 = (distribute A,B,C) . x2 or x1 = x2 )
then reconsider f1 = x1 as Morphism of (Functors A,[:B,C:]) ;
consider F1, F2 being Functor of A,[:B,C:], s being natural_transformation of F1,F2 such that
A1: F1 is_naturally_transformable_to F2 and
A2: ( dom f1 = F1 & cod f1 = F2 & f1 = [[F1,F2],s] ) by Th9;
assume x2 in dom (distribute A,B,C) ; :: thesis: ( not (distribute A,B,C) . x1 = (distribute A,B,C) . x2 or x1 = x2 )
then reconsider f2 = x2 as Morphism of (Functors A,[:B,C:]) ;
consider G1, G2 being Functor of A,[:B,C:], t being natural_transformation of G1,G2 such that
A3: G1 is_naturally_transformable_to G2 and
A4: ( dom f2 = G1 & cod f2 = G2 & f2 = [[G1,G2],t] ) by Th9;
assume (distribute A,B,C) . x1 = (distribute A,B,C) . x2 ; :: thesis: x1 = x2
then [[[(Pr1 F1),(Pr1 F2)],(Pr1 s)],[[(Pr2 F1),(Pr2 F2)],(Pr2 s)]] = (distribute A,B,C) . [[G1,G2],t] by A1, A2, A4, Def13
.= [[[(Pr1 G1),(Pr1 G2)],(Pr1 t)],[[(Pr2 G1),(Pr2 G2)],(Pr2 t)]] by A3, Def13 ;
then ( [[(Pr1 F1),(Pr1 F2)],(Pr1 s)] = [[(Pr1 G1),(Pr1 G2)],(Pr1 t)] & [[(Pr2 F1),(Pr2 F2)],(Pr2 s)] = [[(Pr2 G1),(Pr2 G2)],(Pr2 t)] ) by ZFMISC_1:33;
then A5: ( Pr1 s = Pr1 t & Pr2 s = Pr2 t & [(Pr1 F1),(Pr1 F2)] = [(Pr1 G1),(Pr1 G2)] & [(Pr2 F1),(Pr2 F2)] = [(Pr2 G1),(Pr2 G2)] ) by ZFMISC_1:33;
then ( Pr1 F1 = Pr1 G1 & Pr2 F1 = Pr2 G1 & Pr1 F2 = Pr1 G2 & Pr2 F2 = Pr2 G2 ) by ZFMISC_1:33;
then ( s = t & F1 = G1 & F2 = G2 ) by A1, A3, A5, Th37, Th39;
hence x1 = x2 by A2, A4; :: thesis: verum
end;
thus rng (distribute A,B,C) c= the carrier' of [:(Functors A,B),(Functors A,C):] ; :: according to XBOOLE_0:def 10 :: thesis: the carrier' of [:(Functors A,B),(Functors A,C):] c= rng (distribute A,B,C)
let o be set ; :: according to TARSKI:def 3 :: thesis: ( not o in the carrier' of [:(Functors A,B),(Functors A,C):] or o in rng (distribute A,B,C) )
assume o in the carrier' of [:(Functors A,B),(Functors A,C):] ; :: thesis: o in rng (distribute A,B,C)
then consider o1 being Morphism of (Functors A,B), o2 being Morphism of (Functors A,C) such that
A6: o = [o1,o2] by CAT_2:37;
consider F1, F2 being Functor of A,B, s being natural_transformation of F1,F2 such that
A7: F1 is_naturally_transformable_to F2 and
A8: ( dom o1 = F1 & cod o1 = F2 & o1 = [[F1,F2],s] ) by Th9;
consider G1, G2 being Functor of A,C, t being natural_transformation of G1,G2 such that
A9: G1 is_naturally_transformable_to G2 and
A10: ( dom o2 = G1 & cod o2 = G2 & o2 = [[G1,G2],t] ) by Th9;
set f = [[<:F1,G1:>,<:F2,G2:>],<:s,t:>];
A11: <:F1,G1:> is_naturally_transformable_to <:F2,G2:> by A7, A9, Th46;
then [[<:F1,G1:>,<:F2,G2:>],<:s,t:>] in NatTrans A,[:B,C:] by NATTRA_1:35;
then reconsider f = [[<:F1,G1:>,<:F2,G2:>],<:s,t:>] as Morphism of (Functors A,[:B,C:]) by NATTRA_1:def 18;
( Pr1 <:s,t:> = s & Pr2 <:s,t:> = t & Pr1 <:F1,G1:> = F1 & Pr1 <:F2,G2:> = F2 & Pr2 <:F1,G1:> = G1 & Pr2 <:F2,G2:> = G2 ) by A7, A9, Th36, Th47;
then (distribute A,B,C) . f = o by A6, A8, A10, A11, Def13;
hence o in rng (distribute A,B,C) by FUNCT_2:189; :: thesis: verum