set DD = the Source of C1 | the carrier' of C2;
set CC = the Target of C1 | the carrier' of C2;
set Cm = the Comp of C1 || the carrier' of C2;
set I = the Id of C1 | the carrier of C2;
reconsider O = the carrier of C1 /\ the carrier of C2 as non empty set by A3, XBOOLE_0:def 4;
reconsider o2 = o1 as Object of C2 by A3;
reconsider o = o1 as Object of C by A1, CAT_2:12;
A4:
id o1 = id o
by A1, CAT_2:def 4;
id o2 = id o
by A2, CAT_2:def 4;
then reconsider M = the carrier' of C1 /\ the carrier' of C2 as non empty set by A4, XBOOLE_0:def 4;
A5:
dom the Id of C1 = the carrier of C1
by FUNCT_2:def 1;
A6:
dom the Source of C1 = the carrier' of C1
by FUNCT_2:def 1;
A7:
dom the Target of C1 = the carrier' of C1
by FUNCT_2:def 1;
A8:
dom (the Source of C1 | the carrier' of C2) = M
by A6, RELAT_1:90;
A9:
dom (the Target of C1 | the carrier' of C2) = M
by A7, RELAT_1:90;
A10:
dom (the Id of C1 | the carrier of C2) = O
by A5, RELAT_1:90;
rng (the Source of C1 | the carrier' of C2) c= O
then reconsider DD = the Source of C1 | the carrier' of C2 as Function of M,O by A8, FUNCT_2:def 1, RELSET_1:11;
rng (the Target of C1 | the carrier' of C2) c= O
then reconsider CC = the Target of C1 | the carrier' of C2 as Function of M,O by A9, FUNCT_2:def 1, RELSET_1:11;
rng (the Id of C1 | the carrier of C2) c= M
then reconsider I = the Id of C1 | the carrier of C2 as Function of O,M by A10, FUNCT_2:def 1, RELSET_1:11;
A23:
dom (the Comp of C1 || the carrier' of C2) = (dom the Comp of C1) /\ [:the carrier' of C2,the carrier' of C2:]
by RELAT_1:90;
then
dom (the Comp of C1 || the carrier' of C2) c= [:the carrier' of C1,the carrier' of C1:] /\ [:the carrier' of C2,the carrier' of C2:]
by XBOOLE_1:26;
then A24:
dom (the Comp of C1 || the carrier' of C2) c= [:M,M:]
by ZFMISC_1:123;
rng (the Comp of C1 || the carrier' of C2) c= M
proof
let x be
set ;
TARSKI:def 3 ( not x in rng (the Comp of C1 || the carrier' of C2) or x in M )
assume
x in rng (the Comp of C1 || the carrier' of C2)
;
x in M
then consider m being
set such that A25:
m in dom (the Comp of C1 || the carrier' of C2)
and A26:
x = (the Comp of C1 || the carrier' of C2) . m
by FUNCT_1:def 5;
A27:
m `1 in M
by A24, A25, MCART_1:10;
A28:
m `2 in M
by A24, A25, MCART_1:10;
A29:
m = [(m `1 ),(m `2 )]
by A24, A25, MCART_1:23;
reconsider m1 =
m `1 ,
m2 =
m `2 as
Morphism of
C1 by A27, A28, XBOOLE_0:def 4;
reconsider n1 =
m `1 ,
n2 =
m `2 as
Morphism of
C2 by A27, A28, XBOOLE_0:def 4;
reconsider mm =
m1,
n =
m2 as
Morphism of
C by A1, CAT_2:14;
A30:
m in dom the
Comp of
C1
by A23, A25, XBOOLE_0:def 4;
then A31:
dom m1 = cod m2
by A29, CAT_1:40;
A32:
x = the
Comp of
C1 . m1,
m2
by A25, A26, A29, FUNCT_1:70;
A33:
dom m1 = dom mm
by A1, CAT_2:15;
A34:
dom n1 = dom mm
by A2, CAT_2:15;
A35:
cod m2 = cod n
by A1, CAT_2:15;
A36:
cod n2 = cod n
by A2, CAT_2:15;
A37:
x = m1 * m2
by A29, A30, A32, CAT_1:def 4;
A38:
m1 * m2 = mm * n
by A1, A31, CAT_2:17;
mm * n = n1 * n2
by A2, A31, A33, A34, A35, A36, CAT_2:17;
hence
x in M
by A37, A38, XBOOLE_0:def 4;
verum
end;
then reconsider Cm = the Comp of C1 || the carrier' of C2 as PartFunc of [:M,M:],M by A24, RELSET_1:11;
set CAT = CatStr(# O,M,DD,CC,Cm,I #);
CatStr(# O,M,DD,CC,Cm,I #) is Category-like
proof
hereby CAT_1:def 8 ( ( for b1, b2 being Element of the carrier' of CatStr(# O,M,DD,CC,Cm,I #) holds
( not the Source of CatStr(# O,M,DD,CC,Cm,I #) . b2 = the Target of CatStr(# O,M,DD,CC,Cm,I #) . b1 or ( the Source of CatStr(# O,M,DD,CC,Cm,I #) . (the Comp of CatStr(# O,M,DD,CC,Cm,I #) . b2,b1) = the Source of CatStr(# O,M,DD,CC,Cm,I #) . b1 & the Target of CatStr(# O,M,DD,CC,Cm,I #) . (the Comp of CatStr(# O,M,DD,CC,Cm,I #) . b2,b1) = the Target of CatStr(# O,M,DD,CC,Cm,I #) . b2 ) ) ) & ( for b1, b2, b3 being Element of the carrier' of CatStr(# O,M,DD,CC,Cm,I #) holds
( not the Source of CatStr(# O,M,DD,CC,Cm,I #) . b3 = the Target of CatStr(# O,M,DD,CC,Cm,I #) . b2 or not the Source of CatStr(# O,M,DD,CC,Cm,I #) . b2 = the Target of CatStr(# O,M,DD,CC,Cm,I #) . b1 or the Comp of CatStr(# O,M,DD,CC,Cm,I #) . b3,(the Comp of CatStr(# O,M,DD,CC,Cm,I #) . b2,b1) = the Comp of CatStr(# O,M,DD,CC,Cm,I #) . (the Comp of CatStr(# O,M,DD,CC,Cm,I #) . b3,b2),b1 ) ) & ( for b1 being Element of the carrier of CatStr(# O,M,DD,CC,Cm,I #) holds
( the Source of CatStr(# O,M,DD,CC,Cm,I #) . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b1) = b1 & the Target of CatStr(# O,M,DD,CC,Cm,I #) . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b1) = b1 & ( for b2 being Element of the carrier' of CatStr(# O,M,DD,CC,Cm,I #) holds
( not the Target of CatStr(# O,M,DD,CC,Cm,I #) . b2 = b1 or the Comp of CatStr(# O,M,DD,CC,Cm,I #) . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b1),b2 = b2 ) ) & ( for b2 being Element of the carrier' of CatStr(# O,M,DD,CC,Cm,I #) holds
( not the Source of CatStr(# O,M,DD,CC,Cm,I #) . b2 = b1 or the Comp of CatStr(# O,M,DD,CC,Cm,I #) . b2,(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b1) = b2 ) ) ) ) )
let f,
g be
Morphism of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #);
( ( [g,f] in dom the Comp of CatStr(# O,M,DD,CC,Cm,I #) implies the Source of CatStr(# O,M,DD,CC,Cm,I #) . g = the Target of CatStr(# O,M,DD,CC,Cm,I #) . f ) & ( the Source of CatStr(# O,M,DD,CC,Cm,I #) . g = the Target of CatStr(# O,M,DD,CC,Cm,I #) . f implies [g,f] in dom the Comp of CatStr(# O,M,DD,CC,Cm,I #) ) )reconsider g9 =
g,
f9 =
f as
Morphism of
C1 by XBOOLE_0:def 4;
A40:
g in the
carrier' of
C2
by XBOOLE_0:def 4;
A41:
f in the
carrier' of
C2
by XBOOLE_0:def 4;
hereby ( the Source of CatStr(# O,M,DD,CC,Cm,I #) . g = the Target of CatStr(# O,M,DD,CC,Cm,I #) . f implies [g,f] in dom the Comp of CatStr(# O,M,DD,CC,Cm,I #) )
assume
[g,f] in dom the
Comp of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
;
the Source of CatStr(# O,M,DD,CC,Cm,I #) . g = the Target of CatStr(# O,M,DD,CC,Cm,I #) . fthen A42:
[g,f] in dom the
Comp of
C1
by A23, XBOOLE_0:def 4;
thus the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g =
the
Source of
C1 . g9
by A40, FUNCT_1:72
.=
the
Target of
C1 . f9
by A42, CAT_1:def 8
.=
the
Target of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. f
by A41, FUNCT_1:72
;
verum
end; assume A43:
the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g = the
Target of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. f
;
[g,f] in dom the Comp of CatStr(# O,M,DD,CC,Cm,I #)A44:
the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g = the
Source of
C1 . g9
by A8, FUNCT_1:70;
A45:
the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g = the
Target of
C1 . f9
by A9, A43, FUNCT_1:70;
A46:
[g,f] in [:the carrier' of C2,the carrier' of C2:]
by A40, A41, ZFMISC_1:106;
[g,f] in dom the
Comp of
C1
by A44, A45, CAT_1:def 8;
hence
[g,f] in dom the
Comp of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
by A23, A46, XBOOLE_0:def 4;
verum
end;
hereby ( ( for b1, b2, b3 being Element of the carrier' of CatStr(# O,M,DD,CC,Cm,I #) holds
( not the Source of CatStr(# O,M,DD,CC,Cm,I #) . b3 = the Target of CatStr(# O,M,DD,CC,Cm,I #) . b2 or not the Source of CatStr(# O,M,DD,CC,Cm,I #) . b2 = the Target of CatStr(# O,M,DD,CC,Cm,I #) . b1 or the Comp of CatStr(# O,M,DD,CC,Cm,I #) . b3,(the Comp of CatStr(# O,M,DD,CC,Cm,I #) . b2,b1) = the Comp of CatStr(# O,M,DD,CC,Cm,I #) . (the Comp of CatStr(# O,M,DD,CC,Cm,I #) . b3,b2),b1 ) ) & ( for b1 being Element of the carrier of CatStr(# O,M,DD,CC,Cm,I #) holds
( the Source of CatStr(# O,M,DD,CC,Cm,I #) . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b1) = b1 & the Target of CatStr(# O,M,DD,CC,Cm,I #) . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b1) = b1 & ( for b2 being Element of the carrier' of CatStr(# O,M,DD,CC,Cm,I #) holds
( not the Target of CatStr(# O,M,DD,CC,Cm,I #) . b2 = b1 or the Comp of CatStr(# O,M,DD,CC,Cm,I #) . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b1),b2 = b2 ) ) & ( for b2 being Element of the carrier' of CatStr(# O,M,DD,CC,Cm,I #) holds
( not the Source of CatStr(# O,M,DD,CC,Cm,I #) . b2 = b1 or the Comp of CatStr(# O,M,DD,CC,Cm,I #) . b2,(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b1) = b2 ) ) ) ) )
let f,
g be
Morphism of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #);
( the Source of CatStr(# O,M,DD,CC,Cm,I #) . g = the Target of CatStr(# O,M,DD,CC,Cm,I #) . f implies ( the Source of CatStr(# O,M,DD,CC,Cm,I #) . (the Comp of CatStr(# O,M,DD,CC,Cm,I #) . g,f) = the Source of CatStr(# O,M,DD,CC,Cm,I #) . f & the Target of CatStr(# O,M,DD,CC,Cm,I #) . (the Comp of CatStr(# O,M,DD,CC,Cm,I #) . g,f) = the Target of CatStr(# O,M,DD,CC,Cm,I #) . g ) )reconsider g9 =
g,
f9 =
f as
Morphism of
C1 by XBOOLE_0:def 4;
assume A48:
the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g = the
Target of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. f
;
( the Source of CatStr(# O,M,DD,CC,Cm,I #) . (the Comp of CatStr(# O,M,DD,CC,Cm,I #) . g,f) = the Source of CatStr(# O,M,DD,CC,Cm,I #) . f & the Target of CatStr(# O,M,DD,CC,Cm,I #) . (the Comp of CatStr(# O,M,DD,CC,Cm,I #) . g,f) = the Target of CatStr(# O,M,DD,CC,Cm,I #) . g )then A49:
[g,f] in dom the
Comp of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
by A39;
then reconsider h = the
Comp of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g,
f as
Morphism of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
by PARTFUN1:27;
A50:
h = the
Comp of
C1 . g9,
f9
by A49, FUNCT_1:70;
A51:
the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. f = the
Source of
C1 . f9
by A8, FUNCT_1:70;
A52:
the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g = the
Source of
C1 . g9
by A8, FUNCT_1:70;
A53:
the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. h = the
Source of
C1 . h
by A8, FUNCT_1:70;
A54:
the
Target of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. f = the
Target of
C1 . f9
by A9, FUNCT_1:70;
A55:
the
Target of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g = the
Target of
C1 . g9
by A9, FUNCT_1:70;
the
Target of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. h = the
Target of
C1 . h
by A9, FUNCT_1:70;
hence
( the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. (the Comp of CatStr(# O,M,DD,CC,Cm,I #) . g,f) = the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. f & the
Target of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. (the Comp of CatStr(# O,M,DD,CC,Cm,I #) . g,f) = the
Target of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g )
by A48, A50, A51, A52, A53, A54, A55, CAT_1:def 8;
verum
end;
hereby for b1 being Element of the carrier of CatStr(# O,M,DD,CC,Cm,I #) holds
( the Source of CatStr(# O,M,DD,CC,Cm,I #) . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b1) = b1 & the Target of CatStr(# O,M,DD,CC,Cm,I #) . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b1) = b1 & ( for b2 being Element of the carrier' of CatStr(# O,M,DD,CC,Cm,I #) holds
( not the Target of CatStr(# O,M,DD,CC,Cm,I #) . b2 = b1 or the Comp of CatStr(# O,M,DD,CC,Cm,I #) . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b1),b2 = b2 ) ) & ( for b2 being Element of the carrier' of CatStr(# O,M,DD,CC,Cm,I #) holds
( not the Source of CatStr(# O,M,DD,CC,Cm,I #) . b2 = b1 or the Comp of CatStr(# O,M,DD,CC,Cm,I #) . b2,(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b1) = b2 ) ) )
let f,
g,
h be
Morphism of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #);
( the Source of CatStr(# O,M,DD,CC,Cm,I #) . h = the Target of CatStr(# O,M,DD,CC,Cm,I #) . g & the Source of CatStr(# O,M,DD,CC,Cm,I #) . g = the Target of CatStr(# O,M,DD,CC,Cm,I #) . f implies the Comp of CatStr(# O,M,DD,CC,Cm,I #) . h,(the Comp of CatStr(# O,M,DD,CC,Cm,I #) . g,f) = the Comp of CatStr(# O,M,DD,CC,Cm,I #) . (the Comp of CatStr(# O,M,DD,CC,Cm,I #) . h,g),f )reconsider h9 =
h,
g9 =
g,
f9 =
f as
Morphism of
C1 by XBOOLE_0:def 4;
assume that A56:
the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. h = the
Target of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g
and A57:
the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g = the
Target of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. f
;
the Comp of CatStr(# O,M,DD,CC,Cm,I #) . h,(the Comp of CatStr(# O,M,DD,CC,Cm,I #) . g,f) = the Comp of CatStr(# O,M,DD,CC,Cm,I #) . (the Comp of CatStr(# O,M,DD,CC,Cm,I #) . h,g),fA58:
[h,g] in dom the
Comp of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
by A39, A56;
A59:
[g,f] in dom the
Comp of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
by A39, A57;
then reconsider hg = the
Comp of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. h,
g,
gf = the
Comp of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g,
f as
Morphism of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
by A58, PARTFUN1:27;
reconsider hg9 =
hg,
gf9 =
gf as
Morphism of
C1 by XBOOLE_0:def 4;
A60:
the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. hg = the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g
by A47, A56;
A61:
the
Target of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. gf = the
Target of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g
by A47, A57;
A62:
[hg,f] in dom the
Comp of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
by A39, A57, A60;
A63:
[h,gf] in dom the
Comp of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
by A39, A56, A61;
A64:
the
Source of
C1 . h9 = the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. h
by A8, FUNCT_1:70;
A65:
the
Target of
C1 . g9 = the
Target of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g
by A9, FUNCT_1:70;
A66:
the
Source of
C1 . g9 = the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g
by A8, FUNCT_1:70;
A67:
the
Target of
C1 . f9 = the
Target of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. f
by A9, FUNCT_1:70;
thus the
Comp of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. h,
(the Comp of CatStr(# O,M,DD,CC,Cm,I #) . g,f) =
the
Comp of
C1 . [h9,gf9]
by A63, FUNCT_1:70
.=
the
Comp of
C1 . h9,
(the Comp of C1 . g9,f9)
by A59, FUNCT_1:70
.=
the
Comp of
C1 . (the Comp of C1 . h9,g9),
f9
by A56, A57, A64, A65, A66, A67, CAT_1:def 8
.=
the
Comp of
C1 . [hg9,f9]
by A58, FUNCT_1:70
.=
the
Comp of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. (the Comp of CatStr(# O,M,DD,CC,Cm,I #) . h,g),
f
by A62, FUNCT_1:70
;
verum
end;
let b be
Object of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #);
( the Source of CatStr(# O,M,DD,CC,Cm,I #) . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b) = b & the Target of CatStr(# O,M,DD,CC,Cm,I #) . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b) = b & ( for b1 being Element of the carrier' of CatStr(# O,M,DD,CC,Cm,I #) holds
( not the Target of CatStr(# O,M,DD,CC,Cm,I #) . b1 = b or the Comp of CatStr(# O,M,DD,CC,Cm,I #) . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b),b1 = b1 ) ) & ( for b1 being Element of the carrier' of CatStr(# O,M,DD,CC,Cm,I #) holds
( not the Source of CatStr(# O,M,DD,CC,Cm,I #) . b1 = b or the Comp of CatStr(# O,M,DD,CC,Cm,I #) . b1,(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b) = b1 ) ) )
reconsider b9 =
b as
Object of
C1 by XBOOLE_0:def 4;
thus the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b) =
the
Source of
C1 . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b)
by A8, FUNCT_1:70
.=
the
Source of
C1 . (the Id of C1 . b9)
by A10, FUNCT_1:70
.=
b
by CAT_1:def 8
;
( the Target of CatStr(# O,M,DD,CC,Cm,I #) . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b) = b & ( for b1 being Element of the carrier' of CatStr(# O,M,DD,CC,Cm,I #) holds
( not the Target of CatStr(# O,M,DD,CC,Cm,I #) . b1 = b or the Comp of CatStr(# O,M,DD,CC,Cm,I #) . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b),b1 = b1 ) ) & ( for b1 being Element of the carrier' of CatStr(# O,M,DD,CC,Cm,I #) holds
( not the Source of CatStr(# O,M,DD,CC,Cm,I #) . b1 = b or the Comp of CatStr(# O,M,DD,CC,Cm,I #) . b1,(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b) = b1 ) ) )
thus the
Target of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b) =
the
Target of
C1 . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b)
by A9, FUNCT_1:70
.=
the
Target of
C1 . (the Id of C1 . b9)
by A10, FUNCT_1:70
.=
b
by CAT_1:def 8
;
( ( for b1 being Element of the carrier' of CatStr(# O,M,DD,CC,Cm,I #) holds
( not the Target of CatStr(# O,M,DD,CC,Cm,I #) . b1 = b or the Comp of CatStr(# O,M,DD,CC,Cm,I #) . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b),b1 = b1 ) ) & ( for b1 being Element of the carrier' of CatStr(# O,M,DD,CC,Cm,I #) holds
( not the Source of CatStr(# O,M,DD,CC,Cm,I #) . b1 = b or the Comp of CatStr(# O,M,DD,CC,Cm,I #) . b1,(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b) = b1 ) ) )
hereby for b1 being Element of the carrier' of CatStr(# O,M,DD,CC,Cm,I #) holds
( not the Source of CatStr(# O,M,DD,CC,Cm,I #) . b1 = b or the Comp of CatStr(# O,M,DD,CC,Cm,I #) . b1,(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b) = b1 )
let f be
Morphism of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #);
( the Target of CatStr(# O,M,DD,CC,Cm,I #) . f = b implies the Comp of CatStr(# O,M,DD,CC,Cm,I #) . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b),f = f )reconsider f9 =
f as
Morphism of
C1 by XBOOLE_0:def 4;
assume
the
Target of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. f = b
;
the Comp of CatStr(# O,M,DD,CC,Cm,I #) . (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b),f = fthen A68:
the
Target of
C1 . f9 = b
by A9, FUNCT_1:70;
A69:
the
Source of
C1 . (the Id of C1 . b9) = b9
by CAT_1:def 8;
A70:
the
Id of
C1 . b9 = the
Id of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. b
by A10, FUNCT_1:70;
A71:
f in the
carrier' of
C2
by XBOOLE_0:def 4;
A72:
the
Id of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. b in the
carrier' of
C2
by XBOOLE_0:def 4;
A73:
[(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b),f] in dom the
Comp of
C1
by A68, A69, A70, CAT_1:def 8;
A74:
[(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b),f] in [:the carrier' of C2,the carrier' of C2:]
by A71, A72, ZFMISC_1:106;
A75:
the
Comp of
C1 . (the Id of C1 . b9),
f9 = f9
by A68, CAT_1:def 8;
A76:
[(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b),f] in dom the
Comp of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
by A23, A73, A74, XBOOLE_0:def 4;
the
Comp of
C1 . [(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b),f] = f
by A10, A75, FUNCT_1:70;
hence
the
Comp of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. (the Id of CatStr(# O,M,DD,CC,Cm,I #) . b),
f = f
by A76, FUNCT_1:70;
verum
end;
let g be
Morphism of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #);
( not the Source of CatStr(# O,M,DD,CC,Cm,I #) . g = b or the Comp of CatStr(# O,M,DD,CC,Cm,I #) . g,(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b) = g )
reconsider g9 =
g as
Morphism of
C1 by XBOOLE_0:def 4;
assume
the
Source of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g = b
;
the Comp of CatStr(# O,M,DD,CC,Cm,I #) . g,(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b) = g
then A77:
the
Source of
C1 . g9 = b9
by A8, FUNCT_1:70;
A78:
the
Target of
C1 . (the Id of C1 . b9) = b9
by CAT_1:def 8;
A79:
the
Id of
C1 . b9 = the
Id of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. b
by A10, FUNCT_1:70;
A80:
g in the
carrier' of
C2
by XBOOLE_0:def 4;
A81:
the
Id of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. b in the
carrier' of
C2
by XBOOLE_0:def 4;
A82:
[g,(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b)] in dom the
Comp of
C1
by A77, A78, A79, CAT_1:def 8;
A83:
[g,(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b)] in [:the carrier' of C2,the carrier' of C2:]
by A80, A81, ZFMISC_1:106;
A84:
the
Comp of
C1 . g9,
(the Id of C1 . b9) = g9
by A77, CAT_1:def 8;
A85:
[g,(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b)] in dom the
Comp of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
by A23, A82, A83, XBOOLE_0:def 4;
the
Comp of
C1 . [g,(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b)] = g
by A10, A84, FUNCT_1:70;
hence
the
Comp of
CatStr(#
O,
M,
DD,
CC,
Cm,
I #)
. g,
(the Id of CatStr(# O,M,DD,CC,Cm,I #) . b) = g
by A85, FUNCT_1:70;
verum
end;
hence
ex b1 being strict Category st
( the carrier of b1 = the carrier of C1 /\ the carrier of C2 & the carrier' of b1 = the carrier' of C1 /\ the carrier' of C2 & the Source of b1 = the Source of C1 | the carrier' of C2 & the Target of b1 = the Target of C1 | the carrier' of C2 & the Comp of b1 = the Comp of C1 || the carrier' of C2 & the Id of b1 = the Id of C1 | the carrier of C2 )
; verum