cat_7.miz
begin
registration
cluster
ordinal -> non
pair for
set;
correctness
proof
let X be
set;
assume
A1: X is
ordinal;
assume X is
pair;
then
consider x1,x2 be
object such that
A2: X
=
[x1, x2] by
XTUPLE_0:def 1;
X
=
{
{x1, x2},
{x1}} by
A2,
TARSKI:def 5;
hence contradiction by
A2,
A1;
end;
end
registration
let C be
empty
CategoryStr;
cluster (
Mor C) ->
empty;
correctness
proof
the
carrier of C
=
{} ;
hence thesis by
CAT_6:def 1;
end;
end
registration
let C be non
empty
CategoryStr;
cluster (
Mor C) -> non
empty;
correctness
proof
the
carrier of C
<>
{} ;
hence thesis by
CAT_6:def 1;
end;
end
registration
let C be
empty
with_identities
CategoryStr;
cluster (
Ob C) ->
empty;
correctness ;
end
registration
let C be non
empty
with_identities
CategoryStr;
cluster (
Ob C) -> non
empty;
correctness ;
end
registration
let C be
with_identities
CategoryStr;
let a be
Object of C;
cluster (
id- a) ->
identity;
correctness
proof
per cases ;
suppose C is
empty;
hence thesis by
CAT_6: 10;
end;
suppose
A1: C is non
empty;
(
id- a)
= a by
CAT_6:def 20;
hence thesis by
A1,
CAT_6: 22;
end;
end;
end
theorem ::
CAT_7:1
Th1: for C be
CategoryStr, f be
morphism of C st C is non
empty holds f
in the
carrier of C
proof
let C be
CategoryStr;
let f be
morphism of C;
assume C is non
empty;
then f
in (
Mor C) by
SUBSET_1:def 1;
hence f
in the
carrier of C by
CAT_6:def 1;
end;
theorem ::
CAT_7:2
Th2: for C be
with_identities
CategoryStr, a be
Object of C st C is non
empty holds a
in the
carrier of C
proof
let C be
with_identities
CategoryStr;
let a be
Object of C;
assume C is non
empty;
then a
in (
Ob C) by
SUBSET_1:def 1;
then a
in (
Mor C);
hence a
in the
carrier of C by
CAT_6:def 1;
end;
theorem ::
CAT_7:3
Th3: for C be
composable
CategoryStr, f1,f2,f3 be
morphism of C st f1
|> f2 & f2
|> f3 & f2 is
identity holds f1
|> f3
proof
let C be
composable
CategoryStr;
let f1,f2,f3 be
morphism of C;
A1: C is
right_composable by
CAT_6:def 11;
assume
A2: f1
|> f2 & f2
|> f3;
assume f2 is
identity;
then (f2
(*) f3)
= f3 by
A2,
CAT_6:def 14,
CAT_6:def 4;
hence f1
|> f3 by
A2,
A1,
CAT_6:def 9;
end;
theorem ::
CAT_7:4
Th4: for C be
with_identities
composable
CategoryStr, f1,f2 be
morphism of C st f1
|> f2 holds (
dom (f1
(*) f2))
= (
dom f2) & (
cod (f1
(*) f2))
= (
cod f1)
proof
let C be
with_identities
composable
CategoryStr;
let f1,f2 be
morphism of C;
assume
A1: f1
|> f2;
per cases ;
suppose
A2: C is
empty;
thus (
dom (f1
(*) f2))
= the
Object of C by
A2,
CAT_6:def 18
.= (
dom f2) by
A2,
CAT_6:def 18;
thus (
cod (f1
(*) f2))
= the
Object of C by
A2,
CAT_6:def 19
.= (
cod f1) by
A2,
CAT_6:def 19;
end;
suppose
A3: C is non
empty;
[f1, f2]
in (
dom the
composition of C) by
A1,
CAT_6:def 2;
then
[f1, f2]
in (
dom (
CompMap C)) by
CAT_6:def 29;
then
A4: ((
SourceMap C)
. f1)
= ((
TargetMap C)
. f2) by
A3,
CAT_6: 36;
A5: (f1
(*) f2)
= (the
composition of C
. (f1,f2)) by
A1,
CAT_6:def 3
.= ((
CompMap C)
. (f1,f2)) by
CAT_6:def 29;
thus (
dom (f1
(*) f2))
= ((
SourceMap C)
. (f1
(*) f2)) by
A3,
CAT_6:def 30
.= ((
SourceMap C)
. f2) by
A4,
A5,
CAT_6: 37
.= (
dom f2) by
A3,
CAT_6:def 30;
thus (
cod (f1
(*) f2))
= ((
TargetMap C)
. (f1
(*) f2)) by
A3,
CAT_6:def 31
.= ((
TargetMap C)
. f1) by
A4,
A5,
CAT_6: 37
.= (
cod f1) by
A3,
CAT_6:def 31;
end;
end;
theorem ::
CAT_7:5
Th5: for C be non
empty
composable
with_identities
CategoryStr, f1,f2 be
morphism of C holds f1
|> f2 iff (
dom f1)
= (
cod f2)
proof
let C be non
empty
composable
with_identities
CategoryStr;
let f1,f2 be
morphism of C;
A1: (
dom f1)
= ((
SourceMap C)
. f1) by
CAT_6:def 30;
A2: (
cod f2)
= ((
TargetMap C)
. f2) by
CAT_6:def 31;
hereby
assume f1
|> f2;
then
[f1, f2]
in (
dom the
composition of C) by
CAT_6:def 2;
then
[f1, f2]
in (
dom (
CompMap C)) by
CAT_6:def 29;
hence (
dom f1)
= (
cod f2) by
A1,
A2,
CAT_6: 36;
end;
assume (
dom f1)
= (
cod f2);
then ((
SourceMap C)
. f1)
= ((
TargetMap C)
. f2) by
A1,
CAT_6:def 31;
then
[f1, f2]
in (
dom (
CompMap C)) by
CAT_6: 36;
then
[f1, f2]
in (
dom the
composition of C) by
CAT_6:def 29;
hence f1
|> f2 by
CAT_6:def 2;
end;
theorem ::
CAT_7:6
Th6: for C be
with_identities
composable
CategoryStr, f be
morphism of C st f is
identity holds (
dom f)
= f & (
cod f)
= f
proof
let C be
with_identities
composable
CategoryStr;
let f be
morphism of C;
assume
A1: f is
identity;
per cases ;
suppose
A2: C is
empty;
then
A3: the
Object of C
=
{} by
SUBSET_1:def 1;
(
dom f)
= the
Object of C & (
cod f)
= the
Object of C by
A2,
CAT_6:def 18,
CAT_6:def 19;
hence thesis by
A3,
A2,
SUBSET_1:def 1;
end;
suppose C is non
empty;
hence thesis by
A1,
CAT_6: 24,
CAT_6: 26,
CAT_6: 27;
end;
end;
theorem ::
CAT_7:7
Th7: for C be
composable
with_identities
CategoryStr, f1,f2 be
morphism of C st f1
|> f2 & f1 is
identity & f2 is
identity holds f1
= f2
proof
let C be
composable
with_identities
CategoryStr;
let f1,f2 be
morphism of C;
assume
A1: f1
|> f2;
assume
A2: f1 is
identity;
assume f2 is
identity;
hence f1
= (f1
(*) f2) by
A1,
CAT_6:def 5,
CAT_6:def 14
.= f2 by
A1,
A2,
CAT_6:def 4,
CAT_6:def 14;
end;
theorem ::
CAT_7:8
Th8: for C be non
empty
composable
with_identities
CategoryStr, f1,f2 be
morphism of C st (
dom f1)
= f2 holds f1
|> f2 & (f1
(*) f2)
= f1
proof
let C be non
empty
composable
with_identities
CategoryStr;
let f1,f2 be
morphism of C;
assume (
dom f1)
= f2;
then
consider f be
morphism of C such that
A1: f2
= f & f1
|> f & f is
identity by
CAT_6:def 18;
thus f1
|> f2 by
A1;
thus (f1
(*) f2)
= f1 by
A1,
CAT_6:def 5,
CAT_6:def 14;
end;
theorem ::
CAT_7:9
Th9: for C be non
empty
composable
with_identities
CategoryStr, f1,f2 be
morphism of C st f1
= (
cod f2) holds f1
|> f2 & (f1
(*) f2)
= f2
proof
let C be non
empty
composable
with_identities
CategoryStr;
let f1,f2 be
morphism of C;
assume f1
= (
cod f2);
then
consider f be
morphism of C such that
A1: f1
= f & f
|> f2 & f is
identity by
CAT_6:def 19;
thus f1
|> f2 by
A1;
thus (f1
(*) f2)
= f2 by
A1,
CAT_6:def 4,
CAT_6:def 14;
end;
theorem ::
CAT_7:10
Th10: for C1,C2,C3,C4 be
category, F be
Functor of C1, C2, G be
Functor of C2, C3, H be
Functor of C3, C4 st F is
covariant & G is
covariant & H is
covariant holds (H
(*) (G
(*) F))
= ((H
(*) G)
(*) F)
proof
let C1,C2,C3,C4 be
category;
let F be
Functor of C1, C2;
let G be
Functor of C2, C3;
let H be
Functor of C3, C4;
assume
A1: F is
covariant;
assume
A2: G is
covariant;
assume
A3: H is
covariant;
set GF = (G
(*) F), HG = (H
(*) G);
A4: GF is
covariant by
A1,
A2,
CAT_6: 35;
A5: HG is
covariant by
A2,
A3,
CAT_6: 35;
thus (H
(*) (G
(*) F))
= (GF
* H) by
A4,
A3,
CAT_6:def 27
.= ((F
* G)
* H) by
A1,
A2,
CAT_6:def 27
.= (F
* (G
* H)) by
RELAT_1: 36
.= (F
* HG) by
A2,
A3,
CAT_6:def 27
.= ((H
(*) G)
(*) F) by
A5,
A1,
CAT_6:def 27;
end;
theorem ::
CAT_7:11
Th11: for C,D be
category, F be
Functor of C, D st F is
covariant holds (F
(*) (
id C))
= F & ((
id D)
(*) F)
= F
proof
let C,D be
category;
let F be
Functor of C, D;
assume
A1: F is
covariant;
thus (F
(*) (
id C))
= ((
id C)
* F) by
A1,
CAT_6:def 27
.= ((
id the
carrier of C)
* F) by
STRUCT_0:def 4
.= F by
FUNCT_2: 17;
thus ((
id D)
(*) F)
= (F
* (
id D)) by
A1,
CAT_6:def 27
.= (F
* (
id the
carrier of D)) by
STRUCT_0:def 4
.= F by
FUNCT_2: 17;
end;
theorem ::
CAT_7:12
Th12: for C,D be
composable
with_identities
CategoryStr holds C
~= D iff ex F be
Functor of C, D st F is
covariant & F is
bijective
proof
let C,D be
composable
with_identities
CategoryStr;
hereby
assume C
~= D;
then
consider F be
Functor of C, D, G be
Functor of D, C such that
A1: F is
covariant & G is
covariant & (G
(*) F)
= (
id C) & (F
(*) G)
= (
id D) by
CAT_6:def 28;
take F;
thus F is
covariant by
A1;
(F
* G)
= (
id C) by
A1,
CAT_6:def 27
.= (
id the
carrier of C) by
STRUCT_0:def 4;
then
A2: F is
one-to-one by
FUNCT_2: 23;
(G
* F)
= (
id D) by
A1,
CAT_6:def 27
.= (
id the
carrier of D) by
STRUCT_0:def 4;
then F is
onto by
FUNCT_2: 23;
hence F is
bijective by
A2;
end;
given F be
Functor of C, D such that
A3: F is
covariant & F is
bijective;
A4: (
rng F)
= the
carrier of D by
A3,
FUNCT_2:def 3;
then
reconsider G = (F
" ) as
Function of the
carrier of D, the
carrier of C by
A3,
FUNCT_2: 25;
reconsider G as
Functor of D, C;
per cases ;
suppose
A5: the
carrier of D
<>
{} ;
then
A6: (G
* F)
= (
id the
carrier of D) & (F
* G)
= (
id the
carrier of C) by
A3,
A4,
FUNCT_2: 29;
A7: D is non
empty by
A5;
A8: C is non
empty by
A4,
A5;
A9: F is
identity-preserving & F is
multiplicative by
A3,
CAT_6:def 25;
A10: for g be
morphism of D holds (F
. (G
. g))
= g
proof
let g be
morphism of D;
reconsider x1 = (G
. g), x2 = g as
object;
g
in (
Mor D) by
A7,
SUBSET_1:def 1;
then
A11: g
in the
carrier of D by
CAT_6:def 1;
then
A12: x2
in (
dom G) by
A8,
FUNCT_2:def 1;
thus (F
. (G
. g))
= (F
. x1) by
A8,
CAT_6:def 21
.= (F
. (G
. x2)) by
A7,
CAT_6:def 21
.= ((
id the
carrier of D)
. x2) by
A6,
A12,
FUNCT_1: 13
.= g by
A11,
FUNCT_1: 18;
end;
A13: for f1,f2 be
morphism of C st (F
. f1)
= (F
. f2) holds f1
= f2
proof
let f1,f2 be
morphism of C;
assume
A14: (F
. f1)
= (F
. f2);
reconsider x1 = f1, x2 = f2 as
object;
f1
in (
Mor C) & f2
in (
Mor C) by
A8,
SUBSET_1:def 1;
then f1
in the
carrier of C & f2
in the
carrier of C by
CAT_6:def 1;
then
A15: x1
in (
dom F) & x2
in (
dom F) by
A5,
FUNCT_2:def 1;
(F
. x1)
= (F
. f1) by
A8,
CAT_6:def 21
.= (F
. x2) by
A14,
A8,
CAT_6:def 21;
hence f1
= f2 by
A3,
A15,
FUNCT_1:def 4;
end;
for g be
morphism of D st g is
identity holds (G
. g) is
identity
proof
let g be
morphism of D;
assume g is
identity;
then
A16: for g1 be
morphism of D st g
|> g1 holds (g
(*) g1)
= g1 by
CAT_6:def 4,
CAT_6:def 14;
A17: for f1 be
morphism of C st (G
. g)
|> f1 holds ((G
. g)
(*) f1)
= f1
proof
let f1 be
morphism of C;
assume (G
. g)
|> f1;
then (F
. (G
. g))
|> (F
. f1) & (F
. ((G
. g)
(*) f1))
= ((F
. (G
. g))
(*) (F
. f1)) by
A9,
CAT_6:def 23;
then g
|> (F
. f1) & (F
. ((G
. g)
(*) f1))
= (g
(*) (F
. f1)) by
A10;
hence ((G
. g)
(*) f1)
= f1 by
A16,
A13;
end;
then (G
. g) is
left_identity by
CAT_6:def 4;
then (G
. g) is
right_identity by
CAT_6: 9;
hence (G
. g) is
identity by
A17,
CAT_6:def 4,
CAT_6:def 14;
end;
then
A18: G is
identity-preserving by
CAT_6:def 22;
A19: for f be
morphism of C holds (G
. (F
. f))
= f
proof
let f be
morphism of C;
reconsider x1 = (F
. f), x2 = f as
object;
f
in (
Mor C) by
A8,
SUBSET_1:def 1;
then
A20: f
in the
carrier of C by
CAT_6:def 1;
then
A21: x2
in (
dom F) by
A5,
FUNCT_2:def 1;
thus (G
. (F
. f))
= (G
. x1) by
A7,
CAT_6:def 21
.= (G
. (F
. x2)) by
A8,
CAT_6:def 21
.= ((
id the
carrier of C)
. x2) by
A6,
A21,
FUNCT_1: 13
.= f by
A20,
FUNCT_1: 18;
end;
for g1,g2 be
morphism of D st g1
|> g2 holds (G
. g1)
|> (G
. g2) & (G
. (g1
(*) g2))
= ((G
. g1)
(*) (G
. g2))
proof
let g1,g2 be
morphism of D;
assume
A22: g1
|> g2;
reconsider f1 = (G
. g1), f2 = (G
. g2) as
morphism of C;
A23: g1
= (F
. (G
. g1)) & g2
= (F
. (G
. g2)) by
A10;
A24: (
dom (F
. f1))
= (
cod (F
. f2)) by
A22,
A23,
A7,
Th5;
(
Ob C) is non
empty by
A8;
then (
dom f1)
in (
Ob C) & (
cod f2)
in (
Ob C);
then
reconsider d1 = (
dom f1), c2 = (
cod f2) as
morphism of C;
(F
. d1)
= (F
. (
dom f1)) by
A8,
CAT_6:def 21
.= (
dom (F
. f1)) by
A7,
A8,
A3,
CAT_6: 32
.= (F
. (
cod f2)) by
A24,
A7,
A8,
A3,
CAT_6: 32
.= (F
. c2) by
A8,
CAT_6:def 21;
hence
A25: (G
. g1)
|> (G
. g2) by
A13,
A8,
Th5;
A26: F is
multiplicative by
A3,
CAT_6:def 25;
(g1
(*) g2)
= (F
. ((G
. g1)
(*) (G
. g2))) by
A23,
A26,
A25,
CAT_6:def 23;
hence (G
. (g1
(*) g2))
= ((G
. g1)
(*) (G
. g2)) by
A19;
end;
then
A27: G is
covariant by
A18,
CAT_6:def 23,
CAT_6:def 25;
then (G
* F)
= (F
(*) G) & (F
* G)
= (G
(*) F) by
A3,
CAT_6:def 27;
then (G
(*) F)
= (
id C) & (F
(*) G)
= (
id D) by
A6,
STRUCT_0:def 4;
hence C
~= D by
A3,
A27,
CAT_6:def 28;
end;
suppose
A28: the
carrier of D
=
{} ;
then
A29: D is
empty;
then
A30: C is
empty by
A3,
CAT_6: 31;
for g be
morphism of D st g is
identity holds (G
. g) is
identity by
A30,
CAT_6: 10;
then
A31: G is
identity-preserving by
CAT_6:def 22;
for g1,g2 be
morphism of D st g1
|> g2 holds (G
. g1)
|> (G
. g2) & (G
. (g1
(*) g2))
= ((G
. g1)
(*) (G
. g2)) by
A29,
CAT_6: 1;
then
A32: G is
covariant by
A31,
CAT_6:def 23,
CAT_6:def 25;
(G
(*) F)
= (
id C) & (F
(*) G)
= (
id D) by
A30,
A28;
hence C
~= D by
A3,
A32,
CAT_6:def 28;
end;
end;
theorem ::
CAT_7:13
Th13: for C,D be
empty
with_identities
CategoryStr holds C
~= D
proof
let C,D be
empty
with_identities
CategoryStr;
set F = the
covariant
Functor of C, D;
set G = the
covariant
Functor of D, C;
(G
(*) F)
= (
id C) & (F
(*) G)
= (
id D);
hence C
~= D by
CAT_6:def 28;
end;
theorem ::
CAT_7:14
Th14: for C,D be
with_identities
CategoryStr st C
~= D holds (
card (
Mor C))
= (
card (
Mor D)) & (
card (
Ob C))
= (
card (
Ob D))
proof
let C,D be
with_identities
CategoryStr;
assume C
~= D;
then
consider F be
Functor of C, D, G be
Functor of D, C such that
A1: F is
covariant & G is
covariant & (G
(*) F)
= (
id C) & (F
(*) G)
= (
id D) by
CAT_6:def 28;
(F
* G)
= (
id C) by
A1,
CAT_6:def 27
.= (
id the
carrier of C) by
STRUCT_0:def 4;
then
A2: F is
one-to-one by
FUNCT_2: 23;
A3: (G
* F)
= (
id D) by
A1,
CAT_6:def 27
.= (
id the
carrier of D) by
STRUCT_0:def 4;
per cases ;
suppose
A4: D is
empty;
C is
empty by
A4,
A1,
CAT_6: 31;
hence thesis by
A4;
end;
suppose
A5: not D is
empty;
F is
onto by
A3,
FUNCT_2: 23;
then (
rng F)
= the
carrier of D by
FUNCT_2:def 3;
then
A6: (
rng F)
= (
Mor D) by
CAT_6:def 1;
A7: (
dom F)
= the
carrier of C by
A5,
FUNCT_2:def 1;
then
A8: (
dom F)
= (
Mor C) by
CAT_6:def 1;
hence (
card (
Mor C))
= (
card (
Mor D)) by
CARD_1: 5,
A6,
A2,
WELLORD2:def 4;
set F1 = (F
| (
Ob C));
A9: (
dom F1)
= (
Ob C) by
A8,
RELAT_1: 62;
for y be
object holds y
in (
rng F1) iff y
in (
Ob D)
proof
let y be
object;
hereby
assume y
in (
rng F1);
then
consider x be
object such that
A10: x
in (
dom F1) & y
= (F1
. x) by
FUNCT_1:def 3;
A11: x
in (
Ob C) by
A10;
A12: y
= (F
. x) by
A10,
FUNCT_1: 49;
x
in { f where f be
morphism of C : f is
identity & f
in (
Mor C) } by
A11,
CAT_6:def 17;
then
consider f be
morphism of C such that
A13: x
= f & f is
identity & f
in (
Mor C);
C is non
empty by
A10;
then
A14: y
= (F
. f) by
A12,
A13,
CAT_6:def 21;
then
reconsider g = y as
morphism of D;
(
Mor D)
<>
{} by
A5;
then g is
identity & g
in (
Mor D) by
A14,
A13,
CAT_6:def 22,
A1,
CAT_6:def 25;
then g
in { f1 where f1 be
morphism of D : f1 is
identity & f1
in (
Mor D) };
hence y
in (
Ob D) by
CAT_6:def 17;
end;
assume y
in (
Ob D);
then y
in { g where g be
morphism of D : g is
identity & g
in (
Mor D) } by
CAT_6:def 17;
then
consider g be
morphism of D such that
A15: y
= g & g is
identity & g
in (
Mor D);
consider x be
object such that
A16: x
in (
dom F) & g
= (F
. x) by
A15,
A6,
FUNCT_1:def 3;
reconsider f = x as
morphism of C by
A16,
CAT_6:def 1;
A17: C is non
empty by
A16;
then g
= (F
. f) by
A16,
CAT_6:def 21;
then (G
. g)
= ((G
(*) F)
. f) by
A1,
A17,
CAT_6: 34
.= ((
id C)
. x) by
A1,
A17,
CAT_6:def 21
.= ((
id the
carrier of C)
. x) by
STRUCT_0:def 4
.= x by
FUNCT_1: 18,
A16;
then f is
identity & f
in (
Mor C) by
A16,
A7,
A15,
CAT_6:def 22,
A1,
CAT_6:def 25,
CAT_6:def 1;
then f
in { f1 where f1 be
morphism of C : f1 is
identity & f1
in (
Mor C) };
then
A18: f
in (
Ob C) by
CAT_6:def 17;
g
= (F1
. f) by
A18,
A16,
FUNCT_1: 49;
hence y
in (
rng F1) by
A9,
A18,
A15,
FUNCT_1:def 3;
end;
then
A19: (
rng F1)
= (
Ob D) by
TARSKI: 2;
F1 is
one-to-one by
A2,
FUNCT_1: 52;
hence (
card (
Ob C))
= (
card (
Ob D)) by
CARD_1: 5,
A9,
A19,
WELLORD2:def 4;
end;
end;
theorem ::
CAT_7:15
Th15: for C,D be
with_identities
CategoryStr st C
~= D & C is
empty holds D is
empty
proof
let C,D be
with_identities
CategoryStr;
assume C
~= D;
then
A1: (
card (
Mor C))
= (
card (
Mor D)) by
Th14;
assume C is
empty;
hence D is
empty by
A1;
end;
begin
definition
let C be
CategoryStr;
let a,b be
Object of C;
::
CAT_7:def1
func
Hom (a,b) ->
Subset of (
Mor C) equals { f where f be
morphism of C : ex f1,f2 be
morphism of C st a
= f1 & b
= f2 & f
|> f1 & f2
|> f };
correctness
proof
set IT = { f where f be
morphism of C : ex f1,f2 be
morphism of C st a
= f1 & b
= f2 & f
|> f1 & f2
|> f };
now
for x be
object st x
in IT holds x
in (
Mor C)
proof
let x be
object;
assume x
in IT;
then
consider f be
morphism of C such that
A1: x
= f & ex f1,f2 be
morphism of C st a
= f1 & b
= f2 & f
|> f1 & f2
|> f;
consider f1,f2 be
morphism of C such that
A2: a
= f1 & b
= f2 & f
|> f1 & f2
|> f by
A1;
C is non
empty by
A2,
CAT_6: 1;
then (
Mor C) is non
empty;
hence x
in (
Mor C) by
A1;
end;
hence IT is
Subset of (
Mor C) by
TARSKI:def 3;
end;
hence thesis;
end;
end
definition
let C be non
empty
composable
with_identities
CategoryStr;
let a,b be
Object of C;
:: original:
Hom
redefine
::
CAT_7:def2
func
Hom (a,b) ->
Subset of (
Mor C) equals
:
Def2: { f where f be
morphism of C : (
dom f)
= a & (
cod f)
= b };
correctness
proof
for x be
object holds x
in (
Hom (a,b)) iff x
in { f where f be
morphism of C : (
dom f)
= a & (
cod f)
= b }
proof
let x be
object;
hereby
assume x
in (
Hom (a,b));
then
consider f be
morphism of C such that
A1: x
= f & ex f1,f2 be
morphism of C st a
= f1 & b
= f2 & f
|> f1 & f2
|> f;
consider f1,f2 be
morphism of C such that
A2: a
= f1 & b
= f2 & f
|> f1 & f2
|> f by
A1;
(
dom f)
= a & (
cod f)
= b by
A2,
CAT_6: 26,
CAT_6: 27,
CAT_6: 22;
hence x
in { f where f be
morphism of C : (
dom f)
= a & (
cod f)
= b } by
A1;
end;
assume x
in { f where f be
morphism of C : (
dom f)
= a & (
cod f)
= b };
then
consider f be
morphism of C such that
A3: x
= f & (
dom f)
= a & (
cod f)
= b;
consider f1 be
morphism of C such that
A4: (
dom f)
= f1 & f
|> f1 & f1 is
identity by
CAT_6:def 18;
consider f2 be
morphism of C such that
A5: (
cod f)
= f2 & f2
|> f & f2 is
identity by
CAT_6:def 19;
thus x
in (
Hom (a,b)) by
A3,
A4,
A5;
end;
hence thesis by
TARSKI: 2;
end;
end
definition
let C be
CategoryStr;
let a,b be
Object of C;
assume
A1: (
Hom (a,b))
<>
{} ;
::
CAT_7:def3
mode
Morphism of a,b ->
morphism of C means
:
Def3: it
in (
Hom (a,b));
correctness by
A1,
SUBSET_1: 4;
end
definition
let C be non
empty
with_identities
CategoryStr;
let a be
Object of C;
:: original:
id-
redefine
func
id- a ->
Morphism of a, a ;
coherence
proof
A3: (
id- a)
= a by
CAT_6:def 20;
then (
id- a)
|> (
id- a) by
CAT_6: 23;
then (
id- a)
in (
Hom (a,a)) by
A3;
hence thesis by
Def3;
end;
end
registration
let C be non
empty
with_identities
CategoryStr;
let a be
Object of C;
cluster (
Hom (a,a)) -> non
empty;
correctness
proof
A1: (
id- a)
= a by
CAT_6:def 20;
then (
id- a)
|> (
id- a) by
CAT_6: 23;
then (
id- a)
in (
Hom (a,a)) by
A1;
hence thesis;
end;
end
definition
let C be
composable
with_identities
CategoryStr;
let a,b,c be
Object of C;
let f be
Morphism of a, b;
let g be
Morphism of b, c;
assume
A1: (
Hom (a,b))
<>
{} & (
Hom (b,c))
<>
{} ;
::
CAT_7:def4
func g
* f ->
Morphism of a, c equals
:
Def4: (g
(*) f);
correctness
proof
f
in (
Hom (a,b)) by
A1,
Def3;
then
consider f3 be
morphism of C such that
A2: f
= f3 & ex f1,f2 be
morphism of C st a
= f1 & b
= f2 & f3
|> f1 & f2
|> f3;
consider f1,f2 be
morphism of C such that
A3: a
= f1 & b
= f2 & f3
|> f1 & f2
|> f3 by
A2;
g
in (
Hom (b,c)) by
A1,
Def3;
then
consider g3 be
morphism of C such that
A4: g
= g3 & ex g1,g2 be
morphism of C st b
= g1 & c
= g2 & g3
|> g1 & g2
|> g3;
consider g1,g2 be
morphism of C such that
A5: b
= g1 & c
= g2 & g3
|> g1 & g2
|> g3 by
A4;
A6: C is
left_composable & C is
right_composable by
CAT_6:def 11;
C is non
empty by
A2,
CAT_6: 1;
then
A7: g
|> f by
A2,
A4,
Th3,
CAT_6: 22;
g2
|> (g
(*) f) & (g
(*) f)
|> f1 by
A2,
A3,
A4,
A5,
A7,
A6,
CAT_6:def 8,
CAT_6:def 9;
then (g
(*) f)
in (
Hom (a,c)) by
A3,
A5;
hence thesis by
Def3;
end;
end
theorem ::
CAT_7:16
Th16: for C be
CategoryStr, a,b be
Object of C, f be
Morphism of a, b st (
Hom (a,b))
<>
{} holds ex f1,f2 be
morphism of C st a
= f1 & b
= f2 & f
|> f1 & f2
|> f
proof
let C be
CategoryStr;
let a,b be
Object of C;
let f be
Morphism of a, b;
assume (
Hom (a,b))
<>
{} ;
then f
in (
Hom (a,b)) by
Def3;
then
consider f11 be
morphism of C such that
A1: f11
= f & ex f1,f2 be
morphism of C st a
= f1 & b
= f2 & f11
|> f1 & f2
|> f11;
thus thesis by
A1;
end;
theorem ::
CAT_7:17
Th17: for C be
composable
with_identities
CategoryStr, a,b,c be
Object of C, f1 be
Morphism of a, b, f2 be
Morphism of b, c st (
Hom (a,b))
<>
{} & (
Hom (b,c))
<>
{} holds f2
|> f1
proof
let C be
composable
with_identities
CategoryStr;
let a,b,c be
Object of C;
let f1 be
Morphism of a, b;
let f2 be
Morphism of b, c;
assume (
Hom (a,b))
<>
{} ;
then
consider f11,f12 be
morphism of C such that
A1: a
= f11 & b
= f12 & f1
|> f11 & f12
|> f1 by
Th16;
assume (
Hom (b,c))
<>
{} ;
then
consider f21,f22 be
morphism of C such that
A2: b
= f21 & c
= f22 & f2
|> f21 & f22
|> f2 by
Th16;
C is non
empty by
A1,
CAT_6: 1;
hence f2
|> f1 by
A1,
A2,
Th3,
CAT_6: 22;
end;
theorem ::
CAT_7:18
Th18: for C be
composable non
empty
with_identities
CategoryStr, a,b be
Object of C, f be
Morphism of a, b st (
Hom (a,b))
<>
{} holds (f
* (
id- a))
= f & ((
id- b)
* f)
= f
proof
let C be
composable non
empty
with_identities
CategoryStr;
let a,b be
Object of C;
let f be
Morphism of a, b;
assume
A1: (
Hom (a,b))
<>
{} ;
A3: (
id- a)
= a & (
id- b)
= b by
CAT_6:def 20;
A4: (
Hom (a,a))
<>
{} & (
Hom (b,b))
<>
{} ;
A5: f
|> (
id- a) & (
id- b)
|> f by
A1,
A4,
Th17;
thus (f
* (
id- a))
= (f
(*) (
id- a)) by
A4,
A1,
Def4
.= f by
A3,
A5,
CAT_6: 23;
thus ((
id- b)
* f)
= ((
id- b)
(*) f) by
A4,
A1,
Def4
.= f by
A3,
A5,
CAT_6: 23;
end;
theorem ::
CAT_7:19
Th19: for C be non
empty
with_identities
composable
CategoryStr, f be
morphism of C holds f
in (
Hom ((
dom f),(
cod f)));
theorem ::
CAT_7:20
Th20: for C be non
empty
with_identities
composable
CategoryStr, a,b be
Object of C, f be
morphism of C holds f
in (
Hom (a,b)) iff (
dom f)
= a & (
cod f)
= b
proof
let C be non
empty
with_identities
composable
CategoryStr;
let a,b be
Object of C;
let f be
morphism of C;
hereby
assume f
in (
Hom (a,b));
then
consider f1 be
morphism of C such that
A1: f
= f1 & a
= (
dom f1) & b
= (
cod f1);
thus (
dom f)
= a & (
cod f)
= b by
A1;
end;
assume (
dom f)
= a & (
cod f)
= b;
hence f
in (
Hom (a,b));
end;
theorem ::
CAT_7:21
Th21: for C be non
empty
with_identities
composable
CategoryStr, a be
Object of C holds a
in (
Hom (a,a))
proof
let C be non
empty
with_identities
composable
CategoryStr;
let a be
Object of C;
a
in (
Ob C);
then
reconsider f = a as
morphism of C;
f is
identity by
CAT_6: 22;
then (
dom f)
= f & (
cod f)
= f by
Th6;
hence a
in (
Hom (a,a));
end;
theorem ::
CAT_7:22
Th22: for C be
composable
with_identities
CategoryStr, a,b,c be
Object of C st (
Hom (a,b))
<>
{} & (
Hom (b,c))
<>
{} holds (
Hom (a,c))
<>
{}
proof
let C be
composable
with_identities
CategoryStr;
let a,b,c be
Object of C;
assume
A1: (
Hom (a,b))
<>
{} ;
set f1 = the
Morphism of a, b;
consider f11,f12 be
morphism of C such that
A2: a
= f11 & b
= f12 & f1
|> f11 & f12
|> f1 by
A1,
Th16;
assume
A3: (
Hom (b,c))
<>
{} ;
set f2 = the
Morphism of b, c;
consider f22,f23 be
morphism of C such that
A4: b
= f22 & c
= f23 & f2
|> f22 & f23
|> f2 by
A3,
Th16;
A5: C is
left_composable & C is
right_composable by
CAT_6:def 11;
C is non
empty by
A2,
CAT_6: 1;
then
A6: f2
|> f1 by
A2,
A4,
Th3,
CAT_6: 22;
f23
|> (f2
(*) f1) & (f2
(*) f1)
|> f11 by
A2,
A4,
A6,
A5,
CAT_6:def 8,
CAT_6:def 9;
then (f2
(*) f1)
in (
Hom (a,c)) by
A2,
A4;
hence (
Hom (a,c))
<>
{} ;
end;
theorem ::
CAT_7:23
Th23: for C be
category, a,b,c,d be
Object of C, f1 be
Morphism of a, b, f2 be
Morphism of b, c, f3 be
Morphism of c, d st (
Hom (a,b))
<>
{} & (
Hom (b,c))
<>
{} & (
Hom (c,d))
<>
{} holds (f3
* (f2
* f1))
= ((f3
* f2)
* f1)
proof
let C be
category;
let a,b,c,d be
Object of C;
let f1 be
Morphism of a, b;
let f2 be
Morphism of b, c;
let f3 be
Morphism of c, d;
assume
A1: (
Hom (a,b))
<>
{} ;
assume
A2: (
Hom (b,c))
<>
{} ;
assume
A3: (
Hom (c,d))
<>
{} ;
A4: (
Hom (a,c))
<>
{} by
A1,
A2,
Th22;
A5: (
Hom (b,d))
<>
{} by
A2,
A3,
Th22;
A6: f3
|> f2 & f2
|> f1 by
A1,
A2,
A3,
Th17;
(f3
* f2)
|> f1 by
A5,
A1,
Th17;
then
A7: (f3
(*) f2)
|> f1 by
A2,
A3,
Def4;
f3
|> (f2
* f1) by
A4,
A3,
Th17;
then
A8: f3
|> (f2
(*) f1) by
A1,
A2,
Def4;
thus (f3
* (f2
* f1))
= (f3
(*) (f2
* f1)) by
A3,
A4,
Def4
.= (f3
(*) (f2
(*) f1)) by
A1,
A2,
Def4
.= ((f3
(*) f2)
(*) f1) by
A6,
A7,
A8,
CAT_6:def 10
.= ((f3
* f2)
(*) f1) by
A2,
A3,
Def4
.= ((f3
* f2)
* f1) by
A1,
A5,
Def4;
end;
theorem ::
CAT_7:24
Th24: for C be
composable
with_identities
CategoryStr, a,b,c be
Object of C, f1 be
Morphism of a, b, f2 be
Morphism of b, c st (
Hom (a,b))
<>
{} & (
Hom (b,c))
<>
{} holds (f1 is
identity implies (f2
* f1)
= f2) & (f2 is
identity implies (f2
* f1)
= f1)
proof
let C be
composable
with_identities
CategoryStr;
let a,b,c be
Object of C;
let f1 be
Morphism of a, b;
let f2 be
Morphism of b, c;
assume
A1: (
Hom (a,b))
<>
{} & (
Hom (b,c))
<>
{} ;
then
A2: C is non
empty;
A3: f2
|> f1 by
A1,
Th17;
thus (f1 is
identity implies (f2
* f1)
= f2)
proof
assume f1 is
identity;
then
A4: f1 is
Object of C by
A2,
CAT_6: 22;
thus (f2
* f1)
= (f2
(*) f1) by
A1,
Def4
.= f2 by
A2,
A4,
A3,
CAT_6: 23;
end;
assume f2 is
identity;
then
A5: f2 is
Object of C by
A2,
CAT_6: 22;
thus (f2
* f1)
= (f2
(*) f1) by
A1,
Def4
.= f1 by
A2,
A5,
A3,
CAT_6: 23;
end;
begin
definition
let C be
composable
with_identities
CategoryStr, a,b be
Object of C, f be
Morphism of a, b;
::
CAT_7:def5
attr f is
monomorphism means (
Hom (a,b))
<>
{} & for c be
Object of C st (
Hom (c,a))
<>
{} holds for g1,g2 be
Morphism of c, a st (f
* g1)
= (f
* g2) holds g1
= g2;
::
CAT_7:def6
attr f is
epimorphism means (
Hom (a,b))
<>
{} & for c be
Object of C st (
Hom (b,c))
<>
{} holds for g1,g2 be
Morphism of b, c st (g1
* f)
= (g2
* f) holds g1
= g2;
end
theorem ::
CAT_7:25
for C be
composable
with_identities
CategoryStr, a,b be
Object of C, f1 be
Morphism of a, b st (
Hom (a,b))
<>
{} & f1 is
identity holds f1 is
monomorphism
proof
let C be
composable
with_identities
CategoryStr;
let a,b be
Object of C;
let f1 be
Morphism of a, b;
assume
A1: (
Hom (a,b))
<>
{} ;
assume
A2: f1 is
identity;
thus (
Hom (a,b))
<>
{} by
A1;
let c be
Object of C;
assume
A3: (
Hom (c,a))
<>
{} ;
let g1,g2 be
Morphism of c, a;
assume
A4: (f1
* g1)
= (f1
* g2);
thus g1
= (f1
* g1) by
A3,
A1,
A2,
Th24
.= g2 by
A3,
A1,
A4,
A2,
Th24;
end;
theorem ::
CAT_7:26
for C be
category, a,b,c be
Object of C, f1 be
Morphism of a, b, f2 be
Morphism of b, c st f1 is
monomorphism & f2 is
monomorphism holds (f2
* f1) is
monomorphism
proof
let C be
category;
let a,b,c be
Object of C;
let f1 be
Morphism of a, b;
let f2 be
Morphism of b, c;
assume
A1: f1 is
monomorphism;
assume
A2: f2 is
monomorphism;
hence (
Hom (a,c))
<>
{} by
A1,
Th22;
let d be
Object of C;
assume
A3: (
Hom (d,a))
<>
{} ;
let g1,g2 be
Morphism of d, a;
assume
A4: ((f2
* f1)
* g1)
= ((f2
* f1)
* g2);
A5: (
Hom (d,b))
<>
{} by
A3,
A1,
Th22;
(f2
* (f1
* g1))
= ((f2
* f1)
* g1) by
A1,
A2,
A3,
Th23
.= (f2
* (f1
* g2)) by
A4,
A1,
A2,
A3,
Th23;
hence g1
= g2 by
A1,
A3,
A2,
A5;
end;
theorem ::
CAT_7:27
for C be
category, a,b,c be
Object of C, f1 be
Morphism of a, b, f2 be
Morphism of b, c st (f2
* f1) is
monomorphism & (
Hom (a,b))
<>
{} & (
Hom (b,c))
<>
{} holds f1 is
monomorphism
proof
let C be
category;
let a,b,c be
Object of C;
let f1 be
Morphism of a, b;
let f2 be
Morphism of b, c;
assume
A1: (f2
* f1) is
monomorphism;
assume
A2: (
Hom (a,b))
<>
{} & (
Hom (b,c))
<>
{} ;
thus (
Hom (a,b))
<>
{} by
A2;
let d be
Object of C;
assume
A3: (
Hom (d,a))
<>
{} ;
let g1,g2 be
Morphism of d, a;
assume
A4: (f1
* g1)
= (f1
* g2);
((f2
* f1)
* g1)
= (f2
* (f1
* g1)) by
A2,
A3,
Th23
.= ((f2
* f1)
* g2) by
A2,
A4,
A3,
Th23;
hence g1
= g2 by
A1,
A3;
end;
definition
let C be
composable
with_identities
CategoryStr, a,b be
Object of C, f be
Morphism of a, b;
::
CAT_7:def7
attr f is
section_ means (
Hom (a,b))
<>
{} & (
Hom (b,a))
<>
{} & ex g be
Morphism of b, a st (g
* f)
= (
id- a);
::
CAT_7:def8
attr f is
retraction means (
Hom (a,b))
<>
{} & (
Hom (b,a))
<>
{} & ex g be
Morphism of b, a st (f
* g)
= (
id- b);
end
theorem ::
CAT_7:28
Th28: for C be non
empty
category, a,b be
Object of C, f be
Morphism of a, b st f is
section_ holds f is
monomorphism
proof
let C be non
empty
category;
let a,b be
Object of C;
let f be
Morphism of a, b;
assume
A1: f is
section_;
then
consider g be
Morphism of b, a such that
A2: (g
* f)
= (
id- a);
thus (
Hom (a,b))
<>
{} by
A1;
let c be
Object of C;
assume
A3: (
Hom (c,a))
<>
{} ;
let g1,g2 be
Morphism of c, a;
assume
A4: (f
* g1)
= (f
* g2);
A5: ((g
* f)
* g1)
= (g
* (f
* g1)) by
A1,
A3,
Th23
.= ((g
* f)
* g2) by
A1,
A4,
A3,
Th23;
thus g1
= ((g
* f)
* g1) by
A3,
A2,
Th18
.= g2 by
A5,
A3,
A2,
Th18;
end;
theorem ::
CAT_7:29
for C be
composable
with_identities
CategoryStr, a,b be
Object of C, f1 be
Morphism of a, b st (
Hom (a,b))
<>
{} & f1 is
identity holds f1 is
epimorphism
proof
let C be
composable
with_identities
CategoryStr;
let a,b be
Object of C;
let f1 be
Morphism of a, b;
assume
A1: (
Hom (a,b))
<>
{} ;
assume
A2: f1 is
identity;
thus (
Hom (a,b))
<>
{} by
A1;
let c be
Object of C;
assume
A3: (
Hom (b,c))
<>
{} ;
let g1,g2 be
Morphism of b, c;
assume
A4: (g1
* f1)
= (g2
* f1);
thus g1
= (g1
* f1) by
A3,
A1,
A2,
Th24
.= g2 by
A3,
A1,
A4,
A2,
Th24;
end;
theorem ::
CAT_7:30
for C be
category, a,b,c be
Object of C, f1 be
Morphism of a, b, f2 be
Morphism of b, c st f1 is
epimorphism & f2 is
epimorphism holds (f2
* f1) is
epimorphism
proof
let C be
category;
let a,b,c be
Object of C;
let f1 be
Morphism of a, b;
let f2 be
Morphism of b, c;
assume
A1: f1 is
epimorphism;
assume
A2: f2 is
epimorphism;
hence (
Hom (a,c))
<>
{} by
A1,
Th22;
let d be
Object of C;
assume
A3: (
Hom (c,d))
<>
{} ;
let g1,g2 be
Morphism of c, d;
assume
A4: (g1
* (f2
* f1))
= (g2
* (f2
* f1));
A5: (
Hom (b,d))
<>
{} by
A3,
A2,
Th22;
((g1
* f2)
* f1)
= (g1
* (f2
* f1)) by
A1,
A2,
A3,
Th23
.= ((g2
* f2)
* f1) by
A4,
A1,
A2,
A3,
Th23;
hence g1
= g2 by
A3,
A2,
A1,
A5;
end;
theorem ::
CAT_7:31
for C be
category, a,b,c be
Object of C, f1 be
Morphism of a, b, f2 be
Morphism of b, c st (f2
* f1) is
epimorphism & (
Hom (a,b))
<>
{} & (
Hom (b,c))
<>
{} holds f2 is
epimorphism
proof
let C be
category;
let a,b,c be
Object of C;
let f1 be
Morphism of a, b;
let f2 be
Morphism of b, c;
assume
A1: (f2
* f1) is
epimorphism;
assume
A2: (
Hom (a,b))
<>
{} & (
Hom (b,c))
<>
{} ;
thus (
Hom (b,c))
<>
{} by
A2;
let d be
Object of C;
assume
A3: (
Hom (c,d))
<>
{} ;
let g1,g2 be
Morphism of c, d;
assume
A4: (g1
* f2)
= (g2
* f2);
(g1
* (f2
* f1))
= ((g1
* f2)
* f1) by
A2,
A3,
Th23
.= (g2
* (f2
* f1)) by
A2,
A4,
A3,
Th23;
hence g1
= g2 by
A1,
A3;
end;
theorem ::
CAT_7:32
Th32: for C be non
empty
category, a,b be
Object of C, f be
Morphism of a, b st f is
retraction holds f is
epimorphism
proof
let C be non
empty
category;
let a,b be
Object of C;
let f be
Morphism of a, b;
assume
A1: f is
retraction;
then
consider g be
Morphism of b, a such that
A2: (f
* g)
= (
id- b);
thus (
Hom (a,b))
<>
{} by
A1;
let c be
Object of C;
assume
A3: (
Hom (b,c))
<>
{} ;
let g1,g2 be
Morphism of b, c;
assume
A4: (g1
* f)
= (g2
* f);
A5: (g1
* (f
* g))
= ((g1
* f)
* g) by
A1,
A3,
Th23
.= (g2
* (f
* g)) by
A1,
A4,
A3,
Th23;
thus g1
= (g1
* (f
* g)) by
A3,
A2,
Th18
.= g2 by
A5,
A3,
A2,
Th18;
end;
definition
let C be
composable
with_identities
CategoryStr;
let a,b be
Object of C;
let f be
Morphism of a, b;
::
CAT_7:def9
attr f is
isomorphism means (
Hom (a,b))
<>
{} & (
Hom (b,a))
<>
{} & ex g be
Morphism of b, a st (g
* f)
= (
id- a) & (f
* g)
= (
id- b);
end
definition
let C be
composable
with_identities
CategoryStr;
let a,b be
Object of C;
::
CAT_7:def10
pred a,b
are_isomorphic means ex f be
Morphism of a, b st f is
isomorphism;
end
definition
let C be
composable
with_identities
CategoryStr;
let a,b be
Object of C;
:: original:
are_isomorphic
redefine
::
CAT_7:def11
pred a,b
are_isomorphic means (
Hom (a,b))
<>
{} & (
Hom (b,a))
<>
{} & ex f be
Morphism of a, b, g be
Morphism of b, a st (g
* f)
= (
id- a) & (f
* g)
= (
id- b);
correctness
proof
hereby
assume (a,b)
are_isomorphic ;
then
consider f be
Morphism of a, b such that
A1: f is
isomorphism;
thus (
Hom (a,b))
<>
{} & (
Hom (b,a))
<>
{} by
A1;
consider g be
Morphism of b, a such that
A2: (g
* f)
= (
id- a) & (f
* g)
= (
id- b) by
A1;
take f, g;
thus (g
* f)
= (
id- a) & (f
* g)
= (
id- b) by
A2;
end;
assume
A3: (
Hom (a,b))
<>
{} & (
Hom (b,a))
<>
{} ;
given f be
Morphism of a, b, g be
Morphism of b, a such that
A4: (g
* f)
= (
id- a) & (f
* g)
= (
id- b);
f is
isomorphism by
A3,
A4;
hence (a,b)
are_isomorphic ;
end;
end
theorem ::
CAT_7:33
for C be non
empty
category, a,b be
Object of C, f be
Morphism of a, b st f is
isomorphism holds f is
monomorphism & f is
epimorphism
proof
let C be non
empty
category;
let a,b be
Object of C;
let f be
Morphism of a, b;
assume
A1: f is
isomorphism;
f is
section_ by
A1;
hence f is
monomorphism by
Th28;
f is
retraction by
A1;
hence f is
epimorphism by
Th32;
end;
begin
definition
let C be
CategoryStr;
::
CAT_7:def12
attr C is
preorder means
:
Def12: for a,b be
Object of C, f1,f2 be
morphism of C holds f1
in (
Hom (a,b)) & f2
in (
Hom (a,b)) implies f1
= f2;
end
registration
cluster
empty ->
preorder for
CategoryStr;
correctness ;
end
registration
cluster
strict
preorder for
CategoryStr;
correctness
proof
set C = the
strict
empty
CategoryStr;
take C;
thus thesis;
end;
end
registration
cluster
preorder ->
associative for
composable
with_identities
CategoryStr;
correctness
proof
let C be
composable
with_identities
CategoryStr;
assume
A1: C is
preorder;
per cases ;
suppose C is
empty;
hence thesis;
end;
suppose
A2: C is non
empty;
for f1,f2,f3 be
morphism of C st f1
|> f2 & f2
|> f3 & (f1
(*) f2)
|> f3 & f1
|> (f2
(*) f3) holds (f1
(*) (f2
(*) f3))
= ((f1
(*) f2)
(*) f3)
proof
let f1,f2,f3 be
morphism of C;
assume
A3: f1
|> f2 & f2
|> f3 & (f1
(*) f2)
|> f3 & f1
|> (f2
(*) f3);
set f11 = (f1
(*) (f2
(*) f3)), f22 = ((f1
(*) f2)
(*) f3);
A4: (
dom f11)
= (
dom (f2
(*) f3)) by
A3,
Th4
.= (
dom f3) by
A3,
Th4
.= (
dom f22) by
A3,
Th4;
(
cod f11)
= (
cod f1) by
A3,
Th4
.= (
cod (f1
(*) f2)) by
A3,
Th4
.= (
cod f22) by
A3,
Th4;
then f11
in (
Hom ((
dom f11),(
cod f11))) & f22
in (
Hom ((
dom f11),(
cod f11))) by
A4,
A2,
Th19;
hence (f1
(*) (f2
(*) f3))
= ((f1
(*) f2)
(*) f3) by
A1;
end;
hence thesis by
CAT_6:def 10;
end;
end;
end
definition
let C be
with_identities
CategoryStr;
::
CAT_7:def13
func
RelOb (C) ->
Relation of (
Ob C) equals {
[a, b] where a,b be
Object of C : ex f be
morphism of C st f
in (
Hom (a,b)) };
coherence
proof
set IT = {
[a, b] where a,b be
Object of C : ex f be
morphism of C st f
in (
Hom (a,b)) };
for x be
object st x
in IT holds x
in
[:(
Ob C), (
Ob C):]
proof
let x be
object;
assume x
in IT;
then
consider a,b be
Object of C such that
A1: x
=
[a, b] & ex f be
morphism of C st f
in (
Hom (a,b));
C is non
empty by
A1;
hence x
in
[:(
Ob C), (
Ob C):] by
A1,
ZFMISC_1:def 2;
end;
hence thesis by
TARSKI:def 3;
end;
end
registration
let C be
empty
with_identities
CategoryStr;
cluster (
RelOb C) ->
empty;
correctness ;
end
theorem ::
CAT_7:34
Th34: for C be
composable
with_identities
CategoryStr holds (
dom (
RelOb C))
= (
Ob C) & (
rng (
RelOb C))
= (
Ob C)
proof
let C be
composable
with_identities
CategoryStr;
per cases ;
suppose C is
empty;
then (
Ob C)
=
{} & (
RelOb C)
=
{} ;
hence thesis;
end;
suppose
A1: C is non
empty;
for x be
object st x
in (
Ob C) holds x
in (
dom (
RelOb C))
proof
let x be
object;
assume
A2: x
in (
Ob C);
then
reconsider o = x as
Object of C;
reconsider f = o as
morphism of C by
A2;
f is
identity by
A1,
CAT_6: 22;
then
A3: (
dom f)
= o & (
cod f)
= o by
Th6;
f
in (
Hom ((
dom f),(
cod f))) by
A1,
Th19;
then
[o, o]
in (
RelOb C) by
A3;
hence x
in (
dom (
RelOb C)) by
XTUPLE_0:def 12;
end;
then (
Ob C)
c= (
dom (
RelOb C)) by
TARSKI:def 3;
hence (
dom (
RelOb C))
= (
Ob C) by
XBOOLE_0:def 10;
for x be
object st x
in (
Ob C) holds x
in (
rng (
RelOb C))
proof
let x be
object;
assume
A4: x
in (
Ob C);
then
reconsider o = x as
Object of C;
reconsider f = o as
morphism of C by
A4;
f is
identity by
A1,
CAT_6: 22;
then
A5: (
dom f)
= o & (
cod f)
= o by
Th6;
f
in (
Hom ((
dom f),(
cod f))) by
A1,
Th19;
then
[o, o]
in (
RelOb C) by
A5;
hence x
in (
rng (
RelOb C)) by
XTUPLE_0:def 13;
end;
then (
Ob C)
c= (
rng (
RelOb C)) by
TARSKI:def 3;
hence (
rng (
RelOb C))
= (
Ob C) by
XBOOLE_0:def 10;
end;
end;
theorem ::
CAT_7:35
Th35: for C1,C2 be
composable
with_identities
CategoryStr st C1
~= C2 holds ((
RelOb C1),(
RelOb C2))
are_isomorphic
proof
let C1,C2 be
composable
with_identities
CategoryStr;
assume
A1: C1
~= C2;
per cases ;
suppose
A2: C1 is
empty;
then
A3: (
RelOb C1) is
empty;
C2 is
empty by
A2,
A1,
Th15;
then (
RelOb C2) is
empty;
hence thesis by
A3,
WELLORD1: 38;
end;
suppose
A4: C1 is non
empty;
then
A5: C2 is non
empty by
A1,
Th15;
consider F be
Functor of C1, C2, G be
Functor of C2, C1 such that
A6: F is
covariant & G is
covariant & (G
(*) F)
= (
id C1) & (F
(*) G)
= (
id C2) by
A1,
CAT_6:def 28;
(F
* G)
= (
id C1) by
A6,
CAT_6:def 27
.= (
id the
carrier of C1) by
STRUCT_0:def 4;
then
A7: F is
one-to-one by
FUNCT_2: 23;
set F1 = (F
| (
Ob C1));
A8: (
dom F)
= the
carrier of C1 by
A5,
FUNCT_2:def 1
.= (
Mor C1) by
CAT_6:def 1;
then
A9: (
dom F1)
= (
Ob C1) by
RELAT_1: 62;
A10: (
Ob C1)
= ((
Ob C1)
\/ (
Ob C1))
.= ((
Ob C1)
\/ (
rng (
RelOb C1))) by
Th34
.= ((
dom (
RelOb C1))
\/ (
rng (
RelOb C1))) by
Th34
.= (
field (
RelOb C1)) by
RELAT_1:def 6;
then
A11: (
dom F1)
= (
field (
RelOb C1)) by
A8,
RELAT_1: 62;
for y be
object holds y
in (
rng F1) implies y
in (
Ob C2)
proof
let y be
object;
assume y
in (
rng F1);
then
consider x be
object such that
A12: x
in (
dom F1) & y
= (F1
. x) by
FUNCT_1:def 3;
x
in (
Ob C1) by
A12;
then x
in { f where f be
morphism of C1 : f is
identity & f
in (
Mor C1) } by
CAT_6:def 17;
then
consider f be
morphism of C1 such that
A13: x
= f & f is
identity & f
in (
Mor C1);
A14: y
= (F
. x) by
A12,
FUNCT_1: 49
.= (F
. f) by
A13,
A4,
CAT_6:def 21;
(F
. f) is
identity by
A13,
CAT_6:def 22,
A6,
CAT_6:def 25;
then (F
. f)
in { g where g be
morphism of C2 : g is
identity & g
in (
Mor C2) } by
A5;
hence y
in (
Ob C2) by
A14,
CAT_6:def 17;
end;
then
A15: (
rng F1)
c= (
Ob C2) by
TARSKI:def 3;
for y be
object holds y
in (
Ob C2) implies y
in (
rng F1)
proof
let y be
object;
assume
A16: y
in (
Ob C2);
set x = (G
. y);
A17: (G
* F)
= (
id C2) by
A6,
CAT_6:def 27;
A18: y
in (
Mor C2) by
A16;
then
A19: y
in the
carrier of C2 by
CAT_6:def 1;
y
in (
dom (
id the
carrier of C2)) by
A18,
CAT_6:def 1;
then
A20: y
in (
dom (G
* F)) by
A17,
STRUCT_0:def 4;
then
A21: x
in (
dom F) by
FUNCT_1: 11;
A22: (F
. x)
= ((G
* F)
. y) by
A20,
FUNCT_1: 12
.= ((
id C2)
. y) by
A6,
CAT_6:def 27
.= ((
id the
carrier of C2)
. y) by
STRUCT_0:def 4
.= y by
A19,
FUNCT_1: 18;
y
in { g where g be
morphism of C2 : g is
identity & g
in (
Mor C2) } by
A16,
CAT_6:def 17;
then
consider g be
morphism of C2 such that
A23: y
= g & g is
identity & g
in (
Mor C2);
A24: x
= (G
. g) by
A23,
A4,
A1,
Th15,
CAT_6:def 21;
(G
. g) is
identity by
A23,
CAT_6:def 22,
A6,
CAT_6:def 25;
then (G
. g)
in { f where f be
morphism of C1 : f is
identity & f
in (
Mor C1) } by
A4;
then x
in (
Ob C1) by
A24,
CAT_6:def 17;
hence y
in (
rng F1) by
A21,
A22,
FUNCT_1: 50;
end;
then
A25: (
Ob C2)
c= (
rng F1) by
TARSKI:def 3;
then
A26: (
rng F1)
= (
Ob C2) by
A15,
XBOOLE_0:def 10;
A27: (
rng F1)
= ((
Ob C2)
\/ (
Ob C2)) by
A25,
A15,
XBOOLE_0:def 10
.= ((
Ob C2)
\/ (
rng (
RelOb C2))) by
Th34
.= ((
dom (
RelOb C2))
\/ (
rng (
RelOb C2))) by
Th34
.= (
field (
RelOb C2)) by
RELAT_1:def 6;
A28: F1 is
one-to-one by
A7,
FUNCT_1: 52;
for a,b be
object holds
[a, b]
in (
RelOb C1) iff (a
in (
field (
RelOb C1)) & b
in (
field (
RelOb C1)) &
[(F1
. a), (F1
. b)]
in (
RelOb C2))
proof
let a,b be
object;
hereby
assume
[a, b]
in (
RelOb C1);
then
consider a1,b1 be
Object of C1 such that
A29:
[a, b]
=
[a1, b1] & ex f be
morphism of C1 st f
in (
Hom (a1,b1));
consider f be
morphism of C1 such that
A30: f
in (
Hom (a1,b1)) by
A29;
A31: a
= a1 & b
= b1 by
A29,
XTUPLE_0: 1;
(
Ob C1) is non
empty by
A4;
then
A32: a1
in (
Ob C1) & b1
in (
Ob C1);
hence a
in (
field (
RelOb C1)) & b
in (
field (
RelOb C1)) by
A10,
A29,
XTUPLE_0: 1;
A33: (F1
. a)
= (F
. a1) by
A31,
A4,
FUNCT_1: 49;
A34: (F1
. b)
= (F
. b1) by
A31,
A4,
FUNCT_1: 49;
a
in (
dom F1) & b
in (
dom F1) by
A9,
A29,
XTUPLE_0: 1,
A32;
then
reconsider a2 = (F1
. a), b2 = (F1
. b) as
Object of C2 by
A26,
FUNCT_1: 3;
(
dom f)
= a1 & (
cod f)
= b1 by
A30,
A4,
Th20;
then (
dom (F
. f))
= (F
. a1) & (
cod (F
. f))
= (F
. b1) by
A4,
A5,
A6,
CAT_6: 32;
then (F
. f)
in (
Hom (a2,b2)) by
A33,
A34,
A5,
Th20;
hence
[(F1
. a), (F1
. b)]
in (
RelOb C2);
end;
assume
A35: a
in (
field (
RelOb C1)) & b
in (
field (
RelOb C1));
assume
[(F1
. a), (F1
. b)]
in (
RelOb C2);
then
consider a2,b2 be
Object of C2 such that
A36:
[(F1
. a), (F1
. b)]
=
[a2, b2] & ex g be
morphism of C2 st g
in (
Hom (a2,b2));
consider g be
morphism of C2 such that
A37: g
in (
Hom (a2,b2)) by
A36;
reconsider a1 = a, b1 = b as
Object of C1 by
A10,
A35;
A38: (F
* G)
= (
id C1) by
A6,
CAT_6:def 27;
A39: a
in (
Mor C1) by
A10,
A35;
then
A40: a
in the
carrier of C1 by
CAT_6:def 1;
a
in (
dom (
id the
carrier of C1)) by
A39,
CAT_6:def 1;
then
A41: a
in (
dom (F
* G)) by
A38,
STRUCT_0:def 4;
A42: (G
. a2)
= (G
. (F1
. a)) by
A36,
XTUPLE_0: 1
.= (G
. (F
. a)) by
A10,
A35,
FUNCT_1: 49
.= ((F
* G)
. a) by
A41,
FUNCT_1: 12
.= ((
id C1)
. a) by
A6,
CAT_6:def 27
.= ((
id the
carrier of C1)
. a) by
STRUCT_0:def 4
.= a1 by
A40,
FUNCT_1: 18;
A43: b
in (
Mor C1) by
A10,
A35;
then
A44: b
in the
carrier of C1 by
CAT_6:def 1;
b
in (
dom (
id the
carrier of C1)) by
A43,
CAT_6:def 1;
then
A45: b
in (
dom (F
* G)) by
A38,
STRUCT_0:def 4;
A46: (G
. b2)
= (G
. (F1
. b)) by
A36,
XTUPLE_0: 1
.= (G
. (F
. b)) by
A10,
A35,
FUNCT_1: 49
.= ((F
* G)
. b) by
A45,
FUNCT_1: 12
.= ((
id C1)
. b) by
A6,
CAT_6:def 27
.= ((
id the
carrier of C1)
. b) by
STRUCT_0:def 4
.= b1 by
A44,
FUNCT_1: 18;
(G
. (
dom g))
= (G
. a2) & (G
. (
cod g))
= (G
. b2) by
A37,
A5,
Th20;
then (
dom (G
. g))
= (G
. a2) & (
cod (G
. g))
= (G
. b2) by
A4,
A5,
A6,
CAT_6: 32;
then (G
. g)
in (
Hom (a1,b1)) by
A42,
A46,
A4,
Th20;
hence
[a, b]
in (
RelOb C1);
end;
hence thesis by
A11,
A27,
A28,
WELLORD1:def 7,
WELLORD1:def 8;
end;
end;
registration
let C be non
empty
composable
with_identities
CategoryStr;
cluster (
RelOb C) -> non
empty;
correctness
proof
assume (
RelOb C) is
empty;
then (
dom (
RelOb C))
=
{} ;
hence contradiction by
Th34;
end;
end
theorem ::
CAT_7:36
Th36: for C be
preorder
composable
with_identities
CategoryStr st C is non
empty holds ex F be
Function of C, (
RelOb C) st F is
bijective & (for f be
morphism of C holds (F
. f)
=
[(
dom f), (
cod f)])
proof
let C be
preorder
composable
with_identities
CategoryStr;
assume
A1: C is non
empty;
then
reconsider C1 = C as non
empty
composable
with_identities
CategoryStr;
defpred
P[
object,
object] means for f be
morphism of C1 st $1
= f holds $2
=
[(
dom f), (
cod f)];
A2: for x be
Element of the
carrier of C1 holds ex y be
Element of (
RelOb C1) st
P[x, y]
proof
let x be
Element of the
carrier of C1;
reconsider f = x as
morphism of C1 by
CAT_6:def 1;
set y =
[(
dom f), (
cod f)];
f
in (
Hom ((
dom f),(
cod f)));
then y
in (
RelOb C1);
then
reconsider y as
Element of (
RelOb C1);
take y;
thus
P[x, y];
end;
consider F be
Function of the
carrier of C1, (
RelOb C1) such that
A3: for x be
Element of the
carrier of C1 holds
P[x, (F
. x)] from
FUNCT_2:sch 3(
A2);
reconsider F as
Function of C, (
RelOb C);
take F;
for y be
object st y
in (
RelOb C) holds y
in (
rng F)
proof
let y be
object;
assume y
in (
RelOb C);
then
consider a,b be
Object of C such that
A4: y
=
[a, b] & ex f be
morphism of C st f
in (
Hom (a,b));
consider f be
morphism of C such that
A5: f
in (
Hom (a,b)) by
A4;
reconsider x = f as
Element of C1 by
CAT_6:def 1;
x
in the
carrier of C1;
then
A6: x
in (
dom F) by
FUNCT_2:def 1;
a
= (
dom f) & b
= (
cod f) by
A1,
A5,
Th20;
then (F
. x)
=
[a, b] by
A3;
hence y
in (
rng F) by
A4,
A6,
FUNCT_1: 3;
end;
then (
RelOb C1)
c= (
rng F) by
TARSKI:def 3;
then
A7: F is
onto by
FUNCT_2:def 3,
XBOOLE_0:def 10;
for x1,x2 be
object st x1
in (
dom F) & x2
in (
dom F) & (F
. x1)
= (F
. x2) holds x1
= x2
proof
let x1,x2 be
object;
assume
A8: x1
in (
dom F) & x2
in (
dom F);
assume
A9: (F
. x1)
= (F
. x2);
reconsider x11 = x1, x22 = x2 as
Element of the
carrier of C1 by
A8;
reconsider f1 = x11, f2 = x22 as
morphism of C1 by
CAT_6:def 1;
A10: (F
. f1)
=
[(
dom f1), (
cod f1)] by
A3;
(F
. f2)
=
[(
dom f2), (
cod f2)] by
A3;
then (
dom f1)
= (
dom f2) & (
cod f1)
= (
cod f2) by
A10,
A9,
XTUPLE_0: 1;
then f1
in (
Hom ((
dom f1),(
cod f1))) & f2
in (
Hom ((
dom f1),(
cod f1)));
hence x1
= x2 by
Def12;
end;
then F is
one-to-one by
FUNCT_1:def 4;
hence F is
bijective by
A7;
let f be
morphism of C;
reconsider x = f as
Element of the
carrier of C1 by
CAT_6:def 1;
thus (F
. f)
= (F
. x)
.=
[(
dom f), (
cod f)] by
A3;
end;
theorem ::
CAT_7:37
Th37: for O be
ordinal
number holds ex C be
strict
preorder
category st (
Ob C)
= O & (for o1,o2 be
Object of C st o1
in o2 holds (
Hom (o1,o2))
=
{
[o1, o2]}) & (
RelOb C)
= (
RelIncl O) & (
Mor C)
= (O
\/ {
[o1, o2] where o1,o2 be
Element of O : o1
in o2 })
proof
let O be
ordinal
number;
per cases ;
suppose
A1: O is
empty;
set C = the
strict
empty
category;
take C;
thus (
Ob C)
= O by
A1;
for x be
object holds not x
in {
[o1, o2] where o1,o2 be
Element of O : o1
in o2 }
proof
let x be
object;
assume x
in {
[o1, o2] where o1,o2 be
Element of O : o1
in o2 };
then
consider o1,o2 be
Element of O such that
A2: x
=
[o1, o2] & o1
in o2;
thus contradiction by
A2,
A1,
SUBSET_1:def 1;
end;
hence thesis by
A1,
SUBSET_1:def 1,
XBOOLE_0:def 1;
end;
suppose
A3: O is non
empty;
set X1 = {
[o1, o2] where o1,o2 be
Element of O : o1
in o2 };
set X = (O
\/ X1);
set F1 = {
[
[o1, o1], o1] where o1 be
Element of O : not contradiction };
set F2 = {
[
[o2,
[o1, o2]],
[o1, o2]] where o1,o2 be
Element of O : o1
in o2 };
set F3 = {
[
[
[o1, o2], o1],
[o1, o2]] where o1,o2 be
Element of O : o1
in o2 };
set F4 = {
[
[
[o2, o3],
[o1, o2]],
[o1, o3]] where o1,o2,o3 be
Element of O : o1
in o2 & o2
in o3 };
set F = (((F1
\/ F2)
\/ F3)
\/ F4);
A4: for x be
object st x
in F holds (ex o1 be
Element of O st x
=
[
[o1, o1], o1]) or (ex o1,o2 be
Element of O st o1
in o2 & (x
=
[
[o2,
[o1, o2]],
[o1, o2]] or x
=
[
[
[o1, o2], o1],
[o1, o2]])) or (ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & x
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]])
proof
let x be
object;
assume
A5: x
in F;
per cases by
A5,
XBOOLE_0:def 3;
suppose
A6: x
in ((F1
\/ F2)
\/ F3);
per cases by
A6,
XBOOLE_0:def 3;
suppose
A7: x
in (F1
\/ F2);
per cases by
A7,
XBOOLE_0:def 3;
suppose x
in F1;
then
consider o1 be
Element of O such that
A8: x
=
[
[o1, o1], o1];
thus thesis by
A8;
end;
suppose x
in F2;
then
consider o1,o2 be
Element of O such that
A9: x
=
[
[o2,
[o1, o2]],
[o1, o2]] & o1
in o2;
thus thesis by
A9;
end;
end;
suppose x
in F3;
then
consider o1,o2 be
Element of O such that
A10: x
=
[
[
[o1, o2], o1],
[o1, o2]] & o1
in o2;
thus thesis by
A10;
end;
end;
suppose x
in F4;
then
consider o1,o2,o3 be
Element of O such that
A11: x
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]] & o1
in o2 & o2
in o3;
thus thesis by
A11;
end;
end;
A12: for x,y1,y2 be
object st
[x, y1]
in F &
[x, y2]
in F holds y1
= y2
proof
let x,y1,y2 be
object;
assume
A13:
[x, y1]
in F;
per cases by
A4,
A13;
suppose ex o1 be
Element of O st
[x, y1]
=
[
[o1, o1], o1];
then
consider o1 be
Element of O such that
A14:
[x, y1]
=
[
[o1, o1], o1];
A15: x
=
[o1, o1] & y1
= o1 by
A14,
XTUPLE_0: 1;
assume
A16:
[x, y2]
in F;
per cases by
A4,
A16;
suppose ex o1 be
Element of O st
[x, y2]
=
[
[o1, o1], o1];
then
consider o11 be
Element of O such that
A17:
[x, y2]
=
[
[o11, o11], o11];
x
=
[o11, o11] & y2
= o11 by
A17,
XTUPLE_0: 1;
hence thesis by
A15,
XTUPLE_0: 1;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & (
[x, y2]
=
[
[o2,
[o1, o2]],
[o1, o2]] or
[x, y2]
=
[
[
[o1, o2], o1],
[o1, o2]]);
then
consider o11,o12 be
Element of O such that
A18: o11
in o12 & (
[x, y2]
=
[
[o12,
[o11, o12]],
[o11, o12]] or
[x, y2]
=
[
[
[o11, o12], o11],
[o11, o12]]);
x
=
[o12,
[o11, o12]] or x
=
[
[o11, o12], o11] by
A18,
XTUPLE_0: 1;
hence thesis by
A15,
XTUPLE_0: 1;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 &
[x, y2]
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]];
then
consider o11,o12,o13 be
Element of O such that
A19: o11
in o12 & o12
in o13 &
[x, y2]
=
[
[
[o12, o13],
[o11, o12]],
[o11, o13]];
x
=
[
[o12, o13],
[o11, o12]] by
A19,
XTUPLE_0: 1;
hence thesis by
A15,
XTUPLE_0: 1;
end;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & (
[x, y1]
=
[
[o2,
[o1, o2]],
[o1, o2]] or
[x, y1]
=
[
[
[o1, o2], o1],
[o1, o2]]);
then
consider o1,o2 be
Element of O such that
A20: o1
in o2 & (
[x, y1]
=
[
[o2,
[o1, o2]],
[o1, o2]] or
[x, y1]
=
[
[
[o1, o2], o1],
[o1, o2]]);
per cases by
A20;
suppose
[x, y1]
=
[
[o2,
[o1, o2]],
[o1, o2]];
then
A21: x
=
[o2,
[o1, o2]] & y1
=
[o1, o2] by
XTUPLE_0: 1;
assume
A22:
[x, y2]
in F;
per cases by
A4,
A22;
suppose ex o1 be
Element of O st
[x, y2]
=
[
[o1, o1], o1];
then
consider o11 be
Element of O such that
A23:
[x, y2]
=
[
[o11, o11], o11];
x
=
[o11, o11] by
A23,
XTUPLE_0: 1;
hence thesis by
A21,
XTUPLE_0: 1;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & (
[x, y2]
=
[
[o2,
[o1, o2]],
[o1, o2]] or
[x, y2]
=
[
[
[o1, o2], o1],
[o1, o2]]);
then
consider o11,o12 be
Element of O such that
A24: o11
in o12 & (
[x, y2]
=
[
[o12,
[o11, o12]],
[o11, o12]] or
[x, y2]
=
[
[
[o11, o12], o11],
[o11, o12]]);
per cases by
A24;
suppose
[x, y2]
=
[
[o12,
[o11, o12]],
[o11, o12]];
then x
=
[o12,
[o11, o12]] & y2
=
[o11, o12] by
XTUPLE_0: 1;
hence thesis by
A21,
XTUPLE_0: 1;
end;
suppose
[x, y2]
=
[
[
[o11, o12], o11],
[o11, o12]];
then x
=
[
[o11, o12], o11] by
XTUPLE_0: 1;
hence thesis by
A21,
XTUPLE_0: 1;
end;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 &
[x, y2]
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]];
then
consider o11,o12,o13 be
Element of O such that
A25: o11
in o12 & o12
in o13 &
[x, y2]
=
[
[
[o12, o13],
[o11, o12]],
[o11, o13]];
x
=
[
[o12, o13],
[o11, o12]] by
A25,
XTUPLE_0: 1;
hence thesis by
A21,
XTUPLE_0: 1;
end;
end;
suppose
[x, y1]
=
[
[
[o1, o2], o1],
[o1, o2]];
then
A26: x
=
[
[o1, o2], o1] & y1
=
[o1, o2] by
XTUPLE_0: 1;
assume
A27:
[x, y2]
in F;
per cases by
A4,
A27;
suppose ex o1 be
Element of O st
[x, y2]
=
[
[o1, o1], o1];
then
consider o11 be
Element of O such that
A28:
[x, y2]
=
[
[o11, o11], o11];
x
=
[o11, o11] by
A28,
XTUPLE_0: 1;
hence thesis by
A26,
XTUPLE_0: 1;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & (
[x, y2]
=
[
[o2,
[o1, o2]],
[o1, o2]] or
[x, y2]
=
[
[
[o1, o2], o1],
[o1, o2]]);
then
consider o11,o12 be
Element of O such that
A29: o11
in o12 & (
[x, y2]
=
[
[o12,
[o11, o12]],
[o11, o12]] or
[x, y2]
=
[
[
[o11, o12], o11],
[o11, o12]]);
per cases by
A29;
suppose
[x, y2]
=
[
[o12,
[o11, o12]],
[o11, o12]];
then x
=
[o12,
[o11, o12]] by
XTUPLE_0: 1;
hence thesis by
A26,
XTUPLE_0: 1;
end;
suppose
[x, y2]
=
[
[
[o11, o12], o11],
[o11, o12]];
then
A30: x
=
[
[o11, o12], o11] & y2
=
[o11, o12] by
XTUPLE_0: 1;
thus thesis by
A26,
A30,
XTUPLE_0: 1;
end;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 &
[x, y2]
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]];
then
consider o11,o12,o13 be
Element of O such that
A31: o11
in o12 & o12
in o13 &
[x, y2]
=
[
[
[o12, o13],
[o11, o12]],
[o11, o13]];
x
=
[
[o12, o13],
[o11, o12]] by
A31,
XTUPLE_0: 1;
hence thesis by
A26,
XTUPLE_0: 1;
end;
end;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 &
[x, y1]
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]];
then
consider o1,o2,o3 be
Element of O such that
A32: o1
in o2 & o2
in o3 &
[x, y1]
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]];
A33: x
=
[
[o2, o3],
[o1, o2]] & y1
=
[o1, o3] by
A32,
XTUPLE_0: 1;
assume
A34:
[x, y2]
in F;
per cases by
A4,
A34;
suppose ex o1 be
Element of O st
[x, y2]
=
[
[o1, o1], o1];
then
consider o11 be
Element of O such that
A35:
[x, y2]
=
[
[o11, o11], o11];
x
=
[o11, o11] by
A35,
XTUPLE_0: 1;
hence thesis by
A33,
XTUPLE_0: 1;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & (
[x, y2]
=
[
[o2,
[o1, o2]],
[o1, o2]] or
[x, y2]
=
[
[
[o1, o2], o1],
[o1, o2]]);
then
consider o11,o12 be
Element of O such that
A36: o11
in o12 & (
[x, y2]
=
[
[o12,
[o11, o12]],
[o11, o12]] or
[x, y2]
=
[
[
[o11, o12], o11],
[o11, o12]]);
x
=
[o12,
[o11, o12]] or x
=
[
[o11, o12], o11] by
A36,
XTUPLE_0: 1;
hence thesis by
A33,
XTUPLE_0: 1;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 &
[x, y2]
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]];
then
consider o11,o12,o13 be
Element of O such that
A37: o11
in o12 & o12
in o13 &
[x, y2]
=
[
[
[o12, o13],
[o11, o12]],
[o11, o13]];
x
=
[
[o12, o13],
[o11, o12]] & y2
=
[o11, o13] by
A37,
XTUPLE_0: 1;
then
[o1, o2]
=
[o11, o12] &
[o2, o3]
=
[o12, o13] by
A33,
XTUPLE_0: 1;
then o1
= o11 & o2
= o12 & o3
= o13 by
XTUPLE_0: 1;
hence thesis by
A32,
XTUPLE_0: 1,
A37;
end;
end;
end;
A38: for o1,o2 be
Element of O st o1
in o2 holds
[o1, o2]
in X
proof
let o1,o2 be
Element of O;
assume o1
in o2;
then
[o1, o2]
in X1;
hence
[o1, o2]
in X by
XBOOLE_0:def 3;
end;
for x be
object st x
in F holds x
in
[:
[:X, X:], X:]
proof
let x be
object;
assume
A39: x
in F;
per cases by
A39,
A4;
suppose ex o1 be
Element of O st x
=
[
[o1, o1], o1];
then
consider o1 be
Element of O such that
A40: x
=
[
[o1, o1], o1];
A41: o1
in X by
A3,
XBOOLE_0:def 3;
then
[o1, o1]
in
[:X, X:] by
ZFMISC_1:def 2;
hence thesis by
A40,
A41,
ZFMISC_1:def 2;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & (x
=
[
[o2,
[o1, o2]],
[o1, o2]] or x
=
[
[
[o1, o2], o1],
[o1, o2]]);
then
consider o1,o2 be
Element of O such that
A42: o1
in o2 & (x
=
[
[o2,
[o1, o2]],
[o1, o2]] or x
=
[
[
[o1, o2], o1],
[o1, o2]]);
per cases by
A42;
suppose
A43: x
=
[
[o2,
[o1, o2]],
[o1, o2]];
A44: o2
in X &
[o1, o2]
in X by
A42,
A38,
A3,
XBOOLE_0:def 3;
then
[o2,
[o1, o2]]
in
[:X, X:] by
ZFMISC_1:def 2;
hence thesis by
A43,
A44,
ZFMISC_1:def 2;
end;
suppose
A45: x
=
[
[
[o1, o2], o1],
[o1, o2]];
A46: o1
in X &
[o1, o2]
in X by
A42,
A38,
A3,
XBOOLE_0:def 3;
then
[
[o1, o2], o1]
in
[:X, X:] by
ZFMISC_1:def 2;
hence thesis by
A45,
A46,
ZFMISC_1:def 2;
end;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & x
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]];
then
consider o1,o2,o3 be
Element of O such that
A47: o1
in o2 & o2
in o3 & x
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]];
A48:
[o1, o2]
in X &
[o2, o3]
in X &
[o1, o3]
in X by
A47,
A38,
ORDINAL1: 10;
then
[
[o2, o3],
[o1, o2]]
in
[:X, X:] by
ZFMISC_1:def 2;
hence thesis by
A47,
A48,
ZFMISC_1:def 2;
end;
end;
then
reconsider F as
PartFunc of
[:X, X:], X by
A12,
TARSKI:def 3,
FUNCT_1:def 1;
set C =
CategoryStr (# X, F #);
reconsider C as
strict non
empty
CategoryStr by
A3;
A49: for f be
morphism of C holds (f is
Element of O) or (ex o1,o2 be
Element of O st f
=
[o1, o2] & o1
in o2)
proof
let f be
morphism of C;
f
in (
Mor C);
then
A50: f
in the
carrier of C by
CAT_6:def 1;
per cases by
A50,
XBOOLE_0:def 3;
suppose f
in O;
hence thesis;
end;
suppose f
in X1;
then
consider o1,o2 be
Element of O such that
A51: f
=
[o1, o2] & o1
in o2;
thus thesis by
A51;
end;
end;
A52: for o be
Element of O holds o is
morphism of C
proof
let o be
Element of O;
o
in X by
A3,
XBOOLE_0:def 3;
hence thesis by
CAT_6:def 1;
end;
A53: for o1,o2 be
Element of O st o1
in o2 holds ex f be
morphism of C st f
=
[o1, o2]
proof
let o1,o2 be
Element of O;
assume o1
in o2;
then
[o1, o2]
in X by
A38;
then
reconsider f =
[o1, o2] as
morphism of C by
CAT_6:def 1;
take f;
thus thesis;
end;
A54: for x be
object st (ex o1 be
Element of O st x
=
[
[o1, o1], o1]) or (ex o1,o2 be
Element of O st o1
in o2 & (x
=
[
[o2,
[o1, o2]],
[o1, o2]] or x
=
[
[
[o1, o2], o1],
[o1, o2]])) or (ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & x
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]]) holds x
in F
proof
let x be
object;
assume
A55: (ex o1 be
Element of O st x
=
[
[o1, o1], o1]) or (ex o1,o2 be
Element of O st o1
in o2 & (x
=
[
[o2,
[o1, o2]],
[o1, o2]] or x
=
[
[
[o1, o2], o1],
[o1, o2]])) or (ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & x
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]]);
per cases by
A55;
suppose ex o1 be
Element of O st x
=
[
[o1, o1], o1];
then x
in F1;
then x
in (F1
\/ F2) by
XBOOLE_0:def 3;
then x
in ((F1
\/ F2)
\/ F3) by
XBOOLE_0:def 3;
hence thesis by
XBOOLE_0:def 3;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & (x
=
[
[o2,
[o1, o2]],
[o1, o2]] or x
=
[
[
[o1, o2], o1],
[o1, o2]]);
then x
in F2 or x
in F3;
then x
in (F2
\/ F3) by
XBOOLE_0:def 3;
then x
in (F1
\/ (F2
\/ F3)) by
XBOOLE_0:def 3;
then x
in ((F1
\/ F2)
\/ F3) by
XBOOLE_1: 4;
hence thesis by
XBOOLE_0:def 3;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & x
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]];
then x
in F4;
hence thesis by
XBOOLE_0:def 3;
end;
end;
A56: for o1 be
Element of O, f1,f2 be
morphism of C st f1
= o1 & f2
= o1 holds f1
|> f2 & (f1
(*) f2)
= o1
proof
let o1 be
Element of O;
let f1,f2 be
morphism of C;
assume
A57: f1
= o1 & f2
= o1;
A58:
[
[f1, f2], f2]
in F by
A57,
A54;
then
A59:
[f1, f2]
in (
dom the
composition of C) by
XTUPLE_0:def 12;
hence f1
|> f2 by
CAT_6:def 2;
thus (f1
(*) f2)
= (the
composition of C
. (f1,f2)) by
A59,
CAT_6:def 2,
CAT_6:def 3
.= (F
.
[f1, f2]) by
BINOP_1:def 1
.= o1 by
A57,
A58,
FUNCT_1: 1;
end;
A60: for o1,o2 be
Element of O, f1,f2 be
morphism of C st f1
= o2 & f2
=
[o1, o2] & o1
in o2 holds f1
|> f2 & (f1
(*) f2)
=
[o1, o2]
proof
let o1,o2 be
Element of O;
let f1,f2 be
morphism of C;
assume
A61: f1
= o2 & f2
=
[o1, o2];
assume
A62: o1
in o2;
A63:
[
[f1, f2], f2]
in F by
A61,
A62,
A54;
then
A64:
[f1, f2]
in (
dom the
composition of C) by
XTUPLE_0:def 12;
hence f1
|> f2 by
CAT_6:def 2;
thus (f1
(*) f2)
= (the
composition of C
. (f1,f2)) by
A64,
CAT_6:def 2,
CAT_6:def 3
.= (F
.
[f1, f2]) by
BINOP_1:def 1
.=
[o1, o2] by
A61,
A63,
FUNCT_1: 1;
end;
A65: for o1,o2 be
Element of O, f1,f2 be
morphism of C st f1
=
[o1, o2] & f2
= o1 & o1
in o2 holds f1
|> f2 & (f1
(*) f2)
=
[o1, o2]
proof
let o1,o2 be
Element of O;
let f1,f2 be
morphism of C;
assume
A66: f1
=
[o1, o2] & f2
= o1;
assume
A67: o1
in o2;
A68:
[
[f1, f2], f1]
in F by
A66,
A67,
A54;
then
A69:
[f1, f2]
in (
dom the
composition of C) by
XTUPLE_0:def 12;
hence f1
|> f2 by
CAT_6:def 2;
thus (f1
(*) f2)
= (the
composition of C
. (f1,f2)) by
A69,
CAT_6:def 2,
CAT_6:def 3
.= (F
.
[f1, f2]) by
BINOP_1:def 1
.=
[o1, o2] by
A66,
A68,
FUNCT_1: 1;
end;
A70: for o1,o2,o3 be
Element of O, f1,f2 be
morphism of C st f1
=
[o2, o3] & f2
=
[o1, o2] & o1
in o2 & o2
in o3 holds f1
|> f2 & (f1
(*) f2)
=
[o1, o3]
proof
let o1,o2,o3 be
Element of O;
let f1,f2 be
morphism of C;
assume
A71: f1
=
[o2, o3] & f2
=
[o1, o2];
assume
A72: o1
in o2 & o2
in o3;
then
consider f3 be
morphism of C such that
A73: f3
=
[o1, o3] by
A53,
ORDINAL1: 10;
A74:
[
[f1, f2], f3]
in F by
A71,
A72,
A73,
A54;
then
A75:
[f1, f2]
in (
dom the
composition of C) by
XTUPLE_0:def 12;
hence f1
|> f2 by
CAT_6:def 2;
thus (f1
(*) f2)
= (the
composition of C
. (f1,f2)) by
A75,
CAT_6:def 2,
CAT_6:def 3
.= (F
.
[f1, f2]) by
BINOP_1:def 1
.=
[o1, o3] by
A73,
A74,
FUNCT_1: 1;
end;
A76: for o1,o2 be
Element of O, f1,f2 be
morphism of C st f1
= o1 & f2
= o2 & f1
|> f2 holds o1
= o2
proof
let o1,o2 be
Element of O;
let f1,f2 be
morphism of C;
assume
A77: f1
= o1 & f2
= o2;
assume f1
|> f2;
then
[f1, f2]
in (
dom the
composition of C) by
CAT_6:def 2;
then
consider y be
object such that
A78:
[
[f1, f2], y]
in F by
XTUPLE_0:def 12;
per cases by
A78,
A4;
suppose ex o1 be
Element of O st
[
[f1, f2], y]
=
[
[o1, o1], o1];
then
consider o11 be
Element of O such that
A79:
[
[f1, f2], y]
=
[
[o11, o11], o11];
[f1, f2]
=
[o11, o11] by
A79,
XTUPLE_0: 1;
then f1
= o11 & f2
= o11 by
XTUPLE_0: 1;
hence thesis by
A77;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & (
[
[f1, f2], y]
=
[
[o2,
[o1, o2]],
[o1, o2]] or
[
[f1, f2], y]
=
[
[
[o1, o2], o1],
[o1, o2]]);
then
consider o11,o12 be
Element of O such that
A80: o11
in o12 & (
[
[f1, f2], y]
=
[
[o12,
[o11, o12]],
[o11, o12]] or
[
[f1, f2], y]
=
[
[
[o11, o12], o11],
[o11, o12]]);
[f1, f2]
=
[o12,
[o11, o12]] or
[f1, f2]
=
[
[o11, o12], o11] by
A80,
XTUPLE_0: 1;
hence thesis by
A77,
XTUPLE_0: 1;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 &
[
[f1, f2], y]
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]];
then
consider o1,o2,o3 be
Element of O such that
A81: o1
in o2 & o2
in o3 &
[
[f1, f2], y]
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]];
[f1, f2]
=
[
[o2, o3],
[o1, o2]] by
A81,
XTUPLE_0: 1;
hence thesis by
A77,
XTUPLE_0: 1;
end;
end;
A82: for o1,o2,o3 be
Element of O, f1,f2 be
morphism of C st f1
= o1 & f2
=
[o2, o3] & f1
|> f2 holds o1
= o3
proof
let o1,o2,o3 be
Element of O;
let f1,f2 be
morphism of C;
assume
A83: f1
= o1 & f2
=
[o2, o3];
assume f1
|> f2;
then
[f1, f2]
in (
dom the
composition of C) by
CAT_6:def 2;
then
consider y be
object such that
A84:
[
[f1, f2], y]
in F by
XTUPLE_0:def 12;
per cases by
A84,
A4;
suppose ex o1 be
Element of O st
[
[f1, f2], y]
=
[
[o1, o1], o1];
then
consider o11 be
Element of O such that
A85:
[
[f1, f2], y]
=
[
[o11, o11], o11];
[f1, f2]
=
[o11, o11] by
A85,
XTUPLE_0: 1;
hence thesis by
A83,
XTUPLE_0: 1;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & (
[
[f1, f2], y]
=
[
[o2,
[o1, o2]],
[o1, o2]] or
[
[f1, f2], y]
=
[
[
[o1, o2], o1],
[o1, o2]]);
then
consider o11,o12 be
Element of O such that
A86: o11
in o12 & (
[
[f1, f2], y]
=
[
[o12,
[o11, o12]],
[o11, o12]] or
[
[f1, f2], y]
=
[
[
[o11, o12], o11],
[o11, o12]]);
per cases by
A86,
XTUPLE_0: 1;
suppose
[f1, f2]
=
[o12,
[o11, o12]];
then f1
= o12 & f2
=
[o11, o12] by
XTUPLE_0: 1;
hence thesis by
A83,
XTUPLE_0: 1;
end;
suppose
[f1, f2]
=
[
[o11, o12], o11];
hence thesis by
A83,
XTUPLE_0: 1;
end;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 &
[
[f1, f2], y]
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]];
then
consider o1,o2,o3 be
Element of O such that
A87: o1
in o2 & o2
in o3 &
[
[f1, f2], y]
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]];
[f1, f2]
=
[
[o2, o3],
[o1, o2]] by
A87,
XTUPLE_0: 1;
hence thesis by
A83,
XTUPLE_0: 1;
end;
end;
A88: for o1,o2,o3 be
Element of O, f1,f2 be
morphism of C st f1
=
[o1, o2] & f2
= o3 & f1
|> f2 holds o1
= o3
proof
let o1,o2,o3 be
Element of O;
let f1,f2 be
morphism of C;
assume
A89: f1
=
[o1, o2] & f2
= o3;
assume f1
|> f2;
then
[f1, f2]
in (
dom the
composition of C) by
CAT_6:def 2;
then
consider y be
object such that
A90:
[
[f1, f2], y]
in F by
XTUPLE_0:def 12;
per cases by
A90,
A4;
suppose ex o1 be
Element of O st
[
[f1, f2], y]
=
[
[o1, o1], o1];
then
consider o11 be
Element of O such that
A91:
[
[f1, f2], y]
=
[
[o11, o11], o11];
[f1, f2]
=
[o11, o11] by
A91,
XTUPLE_0: 1;
hence thesis by
A89,
XTUPLE_0: 1;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & (
[
[f1, f2], y]
=
[
[o2,
[o1, o2]],
[o1, o2]] or
[
[f1, f2], y]
=
[
[
[o1, o2], o1],
[o1, o2]]);
then
consider o11,o12 be
Element of O such that
A92: o11
in o12 & (
[
[f1, f2], y]
=
[
[o12,
[o11, o12]],
[o11, o12]] or
[
[f1, f2], y]
=
[
[
[o11, o12], o11],
[o11, o12]]);
per cases by
A92,
XTUPLE_0: 1;
suppose
[f1, f2]
=
[o12,
[o11, o12]];
hence thesis by
A89,
XTUPLE_0: 1;
end;
suppose
[f1, f2]
=
[
[o11, o12], o11];
then f1
=
[o11, o12] & f2
= o11 by
XTUPLE_0: 1;
hence thesis by
A89,
XTUPLE_0: 1;
end;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 &
[
[f1, f2], y]
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]];
then
consider o1,o2,o3 be
Element of O such that
A93: o1
in o2 & o2
in o3 &
[
[f1, f2], y]
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]];
[f1, f2]
=
[
[o2, o3],
[o1, o2]] by
A93,
XTUPLE_0: 1;
hence thesis by
A89,
XTUPLE_0: 1;
end;
end;
A94: for o be
Element of O, f be
morphism of C st f
= o holds f is
identity
proof
let o be
Element of O;
let f be
morphism of C;
assume
A95: f
= o;
for f1 be
morphism of C st f
|> f1 holds (f
(*) f1)
= f1
proof
let f1 be
morphism of C;
per cases by
A49;
suppose
A96: f1 is
Element of O;
assume f
|> f1;
then f
= f1 by
A95,
A96,
A76;
hence thesis by
A96,
A56;
end;
suppose ex o1,o2 be
Element of O st f1
=
[o1, o2] & o1
in o2;
then
consider o1,o2 be
Element of O such that
A97: f1
=
[o1, o2] & o1
in o2;
assume f
|> f1;
then o2
= o by
A95,
A97,
A82;
hence thesis by
A95,
A97,
A60;
end;
end;
then
A98: f is
left_identity by
CAT_6:def 4;
for f1 be
morphism of C st f1
|> f holds (f1
(*) f)
= f1
proof
let f1 be
morphism of C;
per cases by
A49;
suppose
A99: f1 is
Element of O;
assume f1
|> f;
then f
= f1 by
A95,
A99,
A76;
hence thesis by
A99,
A56;
end;
suppose ex o1,o2 be
Element of O st f1
=
[o1, o2] & o1
in o2;
then
consider o1,o2 be
Element of O such that
A100: f1
=
[o1, o2] & o1
in o2;
assume f1
|> f;
then o1
= o by
A95,
A100,
A88;
hence thesis by
A95,
A100,
A65;
end;
end;
hence f is
identity by
A98,
CAT_6:def 5,
CAT_6:def 14;
end;
for f1 be
morphism of C st f1
in the
carrier of C holds ex f be
morphism of C st f
|> f1 & f is
left_identity
proof
let f1 be
morphism of C;
assume f1
in the
carrier of C;
per cases by
A49;
suppose
A101: f1 is
Element of O;
take f1;
thus f1
|> f1 by
A56,
A101;
f1 is
identity by
A101,
A94;
hence f1 is
left_identity by
CAT_6:def 14;
thus thesis;
end;
suppose ex o1,o2 be
Element of O st f1
=
[o1, o2] & o1
in o2;
then
consider o11,o12 be
Element of O such that
A102: f1
=
[o11, o12] & o11
in o12;
reconsider f = o12 as
morphism of C by
A52;
take f;
thus f
|> f1 by
A60,
A102;
f is
identity by
A94;
hence f is
left_identity by
CAT_6:def 14;
end;
end;
then
A103: C is
with_left_identities by
CAT_6:def 6;
A104: for f1 be
morphism of C st f1
in the
carrier of C holds ex f be
morphism of C st f1
|> f & f is
right_identity
proof
let f1 be
morphism of C;
assume f1
in the
carrier of C;
per cases by
A49;
suppose
A105: f1 is
Element of O;
take f1;
thus f1
|> f1 by
A56,
A105;
f1 is
identity by
A105,
A94;
hence f1 is
right_identity by
CAT_6:def 14;
thus thesis;
end;
suppose ex o1,o2 be
Element of O st f1
=
[o1, o2] & o1
in o2;
then
consider o11,o12 be
Element of O such that
A106: f1
=
[o11, o12] & o11
in o12;
reconsider f = o11 as
morphism of C by
A52;
take f;
thus f1
|> f by
A65,
A106;
f is
identity by
A94;
hence f is
right_identity by
CAT_6:def 14;
end;
end;
A107: for f1,f2 be
morphism of C st f1
|> f2 holds (ex o1 be
Element of O st f1
= o1 & f2
= o1) or (ex o1,o2 be
Element of O st o1
in o2 & ((f1
=
[o1, o2] & f2
= o1) or (f1
= o2 & f2
=
[o1, o2]))) or (ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & f1
=
[o2, o3] & f2
=
[o1, o2])
proof
let f1,f2 be
morphism of C;
assume f1
|> f2;
then
[f1, f2]
in (
dom the
composition of C) by
CAT_6:def 2;
then
consider y be
object such that
A108:
[
[f1, f2], y]
in F by
XTUPLE_0:def 12;
per cases by
A108,
A4;
suppose ex o1 be
Element of O st
[
[f1, f2], y]
=
[
[o1, o1], o1];
then
consider o11 be
Element of O such that
A109:
[
[f1, f2], y]
=
[
[o11, o11], o11];
[f1, f2]
=
[o11, o11] by
A109,
XTUPLE_0: 1;
then f1
= o11 & f2
= o11 by
XTUPLE_0: 1;
hence thesis;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & (
[
[f1, f2], y]
=
[
[o2,
[o1, o2]],
[o1, o2]] or
[
[f1, f2], y]
=
[
[
[o1, o2], o1],
[o1, o2]]);
then
consider o11,o12 be
Element of O such that
A110: o11
in o12 & (
[
[f1, f2], y]
=
[
[o12,
[o11, o12]],
[o11, o12]] or
[
[f1, f2], y]
=
[
[
[o11, o12], o11],
[o11, o12]]);
per cases by
A110,
XTUPLE_0: 1;
suppose
[f1, f2]
=
[o12,
[o11, o12]];
then f1
= o12 & f2
=
[o11, o12] by
XTUPLE_0: 1;
hence thesis by
A110;
end;
suppose
[f1, f2]
=
[
[o11, o12], o11];
then f1
=
[o11, o12] & f2
= o11 by
XTUPLE_0: 1;
hence thesis by
A110;
end;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 &
[
[f1, f2], y]
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]];
then
consider o1,o2,o3 be
Element of O such that
A111: o1
in o2 & o2
in o3 &
[
[f1, f2], y]
=
[
[
[o2, o3],
[o1, o2]],
[o1, o3]];
[f1, f2]
=
[
[o2, o3],
[o1, o2]] by
A111,
XTUPLE_0: 1;
then f1
=
[o2, o3] & f2
=
[o1, o2] by
XTUPLE_0: 1;
hence thesis by
A111;
end;
end;
for f,f1,f2 be
morphism of C st f1
|> f2 holds (f1
(*) f2)
|> f iff f2
|> f
proof
let f,f1,f2 be
morphism of C;
assume
A112: f1
|> f2;
per cases by
A112,
A107;
suppose ex o1 be
Element of O st f1
= o1 & f2
= o1;
then
consider o1 be
Element of O such that
A113: f1
= o1 & f2
= o1;
A114: (f1
(*) f2)
= o1 by
A113,
A56;
hereby
assume
A115: (f1
(*) f2)
|> f;
per cases by
A115,
A107;
suppose ex o1 be
Element of O st (f1
(*) f2)
= o1 & f
= o1;
then
consider o11 be
Element of O such that
A116: (f1
(*) f2)
= o11 & f
= o11;
thus f2
|> f by
A113,
A116,
A114,
A56;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & (((f1
(*) f2)
=
[o1, o2] & f
= o1) or ((f1
(*) f2)
= o2 & f
=
[o1, o2]));
then
consider o11,o12 be
Element of O such that
A117: o11
in o12 & (((f1
(*) f2)
=
[o11, o12] & f
= o11) or ((f1
(*) f2)
= o12 & f
=
[o11, o12]));
thus f2
|> f by
A113,
A114,
A117,
A60;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & (f1
(*) f2)
=
[o2, o3] & f
=
[o1, o2];
then
consider o11,o12,o13 be
Element of O such that
A118: o11
in o12 & o12
in o13 & (f1
(*) f2)
=
[o12, o13] & f
=
[o11, o12];
thus f2
|> f by
A118,
A113,
A56;
end;
end;
assume
A119: f2
|> f;
per cases by
A119,
A107;
suppose ex o1 be
Element of O st f2
= o1 & f
= o1;
then
consider o11 be
Element of O such that
A120: f2
= o11 & f
= o11;
thus (f1
(*) f2)
|> f by
A113,
A120,
A114,
A56;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & ((f2
=
[o1, o2] & f
= o1) or (f2
= o2 & f
=
[o1, o2]));
then
consider o11,o12 be
Element of O such that
A121: o11
in o12 & ((f2
=
[o11, o12] & f
= o11) or (f2
= o12 & f
=
[o11, o12]));
(f1
(*) f2)
= o12 by
A113,
A121,
A56;
hence (f1
(*) f2)
|> f by
A121,
A113,
A60;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & f2
=
[o2, o3] & f
=
[o1, o2];
then
consider o11,o12,o13 be
Element of O such that
A122: o11
in o12 & o12
in o13 & f2
=
[o12, o13] & f
=
[o11, o12];
thus (f1
(*) f2)
|> f by
A113,
A122;
end;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & ((f1
=
[o1, o2] & f2
= o1) or (f1
= o2 & f2
=
[o1, o2]));
then
consider o1,o2 be
Element of O such that
A123: o1
in o2 & ((f1
=
[o1, o2] & f2
= o1) or (f1
= o2 & f2
=
[o1, o2]));
A124: (f1
(*) f2)
=
[o1, o2] by
A123,
A60,
A65;
hereby
assume
A125: (f1
(*) f2)
|> f;
per cases by
A125,
A107;
suppose ex o1 be
Element of O st (f1
(*) f2)
= o1 & f
= o1;
then
consider o11 be
Element of O such that
A126: (f1
(*) f2)
= o11 & f
= o11;
thus f2
|> f by
A126,
A123,
A60,
A65;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & (((f1
(*) f2)
=
[o1, o2] & f
= o1) or ((f1
(*) f2)
= o2 & f
=
[o1, o2]));
then
consider o11,o12 be
Element of O such that
A127: o11
in o12 & (((f1
(*) f2)
=
[o11, o12] & f
= o11) or ((f1
(*) f2)
= o12 & f
=
[o11, o12]));
o1
= o11 & o2
= o12 by
A124,
XTUPLE_0: 1,
A127;
hence f2
|> f by
A127,
A123,
A60,
A65,
A56;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & (f1
(*) f2)
=
[o2, o3] & f
=
[o1, o2];
then
consider o11,o12,o13 be
Element of O such that
A128: o11
in o12 & o12
in o13 & (f1
(*) f2)
=
[o12, o13] & f
=
[o11, o12];
A129: o1
= o12 & o2
= o13 by
A124,
A128,
XTUPLE_0: 1;
per cases by
A123;
suppose f1
=
[o1, o2] & f2
= o1;
hence f2
|> f by
A129,
A128,
A60;
end;
suppose f1
= o2 & f2
=
[o1, o2];
hence f2
|> f by
A128,
A124,
A70;
end;
end;
end;
assume
A130: f2
|> f;
per cases by
A130,
A107;
suppose ex o1 be
Element of O st f2
= o1 & f
= o1;
then
consider o11 be
Element of O such that
A131: f2
= o11 & f
= o11;
thus (f1
(*) f2)
|> f by
A123,
A131,
A124,
A65;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & ((f2
=
[o1, o2] & f
= o1) or (f2
= o2 & f
=
[o1, o2]));
then
consider o11,o12 be
Element of O such that
A132: o11
in o12 & ((f2
=
[o11, o12] & f
= o11) or (f2
= o12 & f
=
[o11, o12]));
per cases by
A132;
suppose f2
=
[o11, o12] & f
= o11;
hence (f1
(*) f2)
|> f by
A124,
A132,
A123,
A65;
end;
suppose
A133: f2
= o12 & f
=
[o11, o12];
thus (f1
(*) f2)
|> f by
A133,
A124,
A132,
A123,
A70;
end;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & f2
=
[o2, o3] & f
=
[o1, o2];
then
consider o11,o12,o13 be
Element of O such that
A134: o11
in o12 & o12
in o13 & f2
=
[o12, o13] & f
=
[o11, o12];
thus (f1
(*) f2)
|> f by
A123,
A134,
A124,
A70;
end;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & f1
=
[o2, o3] & f2
=
[o1, o2];
then
consider o1,o2,o3 be
Element of O such that
A135: o1
in o2 & o2
in o3 & f1
=
[o2, o3] & f2
=
[o1, o2];
A136: (f1
(*) f2)
=
[o1, o3] by
A135,
A70;
hereby
assume
A137: (f1
(*) f2)
|> f;
per cases by
A137,
A107;
suppose ex o1 be
Element of O st (f1
(*) f2)
= o1 & f
= o1;
then
consider o11 be
Element of O such that
A138: (f1
(*) f2)
= o11 & f
= o11;
thus f2
|> f by
A138,
A136;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & (((f1
(*) f2)
=
[o1, o2] & f
= o1) or ((f1
(*) f2)
= o2 & f
=
[o1, o2]));
then
consider o11,o12 be
Element of O such that
A139: o11
in o12 & (((f1
(*) f2)
=
[o11, o12] & f
= o11) or ((f1
(*) f2)
= o12 & f
=
[o11, o12]));
o1
= o11 & o3
= o12 by
A139,
A136,
XTUPLE_0: 1;
hence f2
|> f by
A139,
A70,
A135,
A65;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & (f1
(*) f2)
=
[o2, o3] & f
=
[o1, o2];
then
consider o11,o12,o13 be
Element of O such that
A140: o11
in o12 & o12
in o13 & (f1
(*) f2)
=
[o12, o13] & f
=
[o11, o12];
o1
= o12 & o3
= o13 by
A136,
A140,
XTUPLE_0: 1;
hence f2
|> f by
A140,
A135,
A70;
end;
end;
assume
A141: f2
|> f;
per cases by
A141,
A107;
suppose ex o1 be
Element of O st f2
= o1 & f
= o1;
then
consider o11 be
Element of O such that
A142: f2
= o11 & f
= o11;
thus (f1
(*) f2)
|> f by
A135,
A142;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & ((f2
=
[o1, o2] & f
= o1) or (f2
= o2 & f
=
[o1, o2]));
then
consider o11,o12 be
Element of O such that
A143: o11
in o12 & ((f2
=
[o11, o12] & f
= o11) or (f2
= o12 & f
=
[o11, o12]));
per cases by
A143;
suppose f2
=
[o11, o12] & f
= o11;
then
A144: o1
= o11 & o12
= o2 by
A135,
XTUPLE_0: 1;
o1
in o3 by
A135,
ORDINAL1: 10;
hence (f1
(*) f2)
|> f by
A144,
A136,
A143,
A135,
A65;
end;
suppose
A145: f2
= o12 & f
=
[o11, o12];
thus (f1
(*) f2)
|> f by
A145,
A135;
end;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & f2
=
[o2, o3] & f
=
[o1, o2];
then
consider o11,o12,o13 be
Element of O such that
A146: o11
in o12 & o12
in o13 & f2
=
[o12, o13] & f
=
[o11, o12];
A147: o1
= o12 & o2
= o13 by
A135,
A146,
XTUPLE_0: 1;
o1
in o3 by
A135,
ORDINAL1: 10;
hence (f1
(*) f2)
|> f by
A146,
A147,
A136,
A70;
end;
end;
end;
then
A148: C is
left_composable by
CAT_6:def 8;
A149: for f,f1,f2 be
morphism of C st f1
|> f2 holds f
|> (f1
(*) f2) iff f
|> f1
proof
let f,f1,f2 be
morphism of C;
assume
A150: f1
|> f2;
per cases by
A150,
A107;
suppose ex o1 be
Element of O st f1
= o1 & f2
= o1;
then
consider o1 be
Element of O such that
A151: f1
= o1 & f2
= o1;
A152: (f1
(*) f2)
= o1 by
A151,
A56;
hereby
assume
A153: f
|> (f1
(*) f2);
per cases by
A153,
A107;
suppose ex o1 be
Element of O st f
= o1 & (f1
(*) f2)
= o1;
then
consider o11 be
Element of O such that
A154: f
= o11 & (f1
(*) f2)
= o11;
thus f
|> f1 by
A151,
A154,
A152,
A56;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & ((f
=
[o1, o2] & (f1
(*) f2)
= o1) or (f
= o2 & (f1
(*) f2)
=
[o1, o2]));
then
consider o11,o12 be
Element of O such that
A155: o11
in o12 & ((f
=
[o11, o12] & (f1
(*) f2)
= o11) or (f
= o12 & (f1
(*) f2)
=
[o11, o12]));
thus f
|> f1 by
A152,
A155,
A151,
A65;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & f
=
[o2, o3] & (f1
(*) f2)
=
[o1, o2];
then
consider o11,o12,o13 be
Element of O such that
A156: o11
in o12 & o12
in o13 & f
=
[o12, o13] & (f1
(*) f2)
=
[o11, o12];
thus f
|> f1 by
A156,
A151,
A56;
end;
end;
assume
A157: f
|> f1;
per cases by
A157,
A107;
suppose ex o1 be
Element of O st f
= o1 & f1
= o1;
then
consider o11 be
Element of O such that
A158: f
= o11 & f1
= o11;
thus f
|> (f1
(*) f2) by
A151,
A158,
A152,
A56;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & ((f
=
[o1, o2] & f1
= o1) or (f
= o2 & f1
=
[o1, o2]));
then
consider o11,o12 be
Element of O such that
A159: o11
in o12 & ((f
=
[o11, o12] & f1
= o11) or (f
= o12 & f1
=
[o11, o12]));
thus f
|> (f1
(*) f2) by
A159,
A151,
A152,
A65;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & f
=
[o2, o3] & f1
=
[o1, o2];
then
consider o11,o12,o13 be
Element of O such that
A160: o11
in o12 & o12
in o13 & f
=
[o12, o13] & f1
=
[o11, o12];
thus f
|> (f1
(*) f2) by
A151,
A160;
end;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & ((f1
=
[o1, o2] & f2
= o1) or (f1
= o2 & f2
=
[o1, o2]));
then
consider o1,o2 be
Element of O such that
A161: o1
in o2 & ((f1
=
[o1, o2] & f2
= o1) or (f1
= o2 & f2
=
[o1, o2]));
A162: (f1
(*) f2)
=
[o1, o2] by
A161,
A60,
A65;
hereby
assume
A163: f
|> (f1
(*) f2);
per cases by
A163,
A107;
suppose ex o1 be
Element of O st f
= o1 & (f1
(*) f2)
= o1;
then
consider o11 be
Element of O such that
A164: f
= o11 & (f1
(*) f2)
= o11;
thus f
|> f1 by
A164,
A161,
A60,
A65;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & ((f
=
[o1, o2] & (f1
(*) f2)
= o1) or (f
= o2 & (f1
(*) f2)
=
[o1, o2]));
then
consider o11,o12 be
Element of O such that
A165: o11
in o12 & ((f
=
[o11, o12] & (f1
(*) f2)
= o11) or (f
= o12 & (f1
(*) f2)
=
[o11, o12]));
o1
= o11 & o2
= o12 by
A162,
XTUPLE_0: 1,
A165;
hence f
|> f1 by
A165,
A161,
A60,
A56,
A65;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & f
=
[o2, o3] & (f1
(*) f2)
=
[o1, o2];
then
consider o11,o12,o13 be
Element of O such that
A166: o11
in o12 & o12
in o13 & f
=
[o12, o13] & (f1
(*) f2)
=
[o11, o12];
A167: o1
= o11 & o2
= o12 by
A162,
A166,
XTUPLE_0: 1;
per cases by
A161;
suppose f1
=
[o1, o2] & f2
= o1;
hence f
|> f1 by
A166,
A162,
A70;
end;
suppose f1
= o2 & f2
=
[o1, o2];
hence f
|> f1 by
A167,
A166,
A65;
end;
end;
end;
assume
A168: f
|> f1;
per cases by
A168,
A107;
suppose ex o1 be
Element of O st f
= o1 & f1
= o1;
then
consider o11 be
Element of O such that
A169: f
= o11 & f1
= o11;
thus f
|> (f1
(*) f2) by
A161,
A169,
A162,
A60;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & ((f
=
[o1, o2] & f1
= o1) or (f
= o2 & f1
=
[o1, o2]));
then
consider o11,o12 be
Element of O such that
A170: o11
in o12 & ((f
=
[o11, o12] & f1
= o11) or (f
= o12 & f1
=
[o11, o12]));
per cases by
A170;
suppose
A171: f
=
[o11, o12] & f1
= o11;
thus f
|> (f1
(*) f2) by
A171,
A162,
A170,
A161,
A70;
end;
suppose
A172: f
= o12 & f1
=
[o11, o12];
thus f
|> (f1
(*) f2) by
A162,
A172,
A170,
A161,
A60;
end;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & f
=
[o2, o3] & f1
=
[o1, o2];
then
consider o11,o12,o13 be
Element of O such that
A173: o11
in o12 & o12
in o13 & f
=
[o12, o13] & f1
=
[o11, o12];
thus f
|> (f1
(*) f2) by
A161,
A173,
A162,
A70;
end;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & f1
=
[o2, o3] & f2
=
[o1, o2];
then
consider o1,o2,o3 be
Element of O such that
A174: o1
in o2 & o2
in o3 & f1
=
[o2, o3] & f2
=
[o1, o2];
A175: (f1
(*) f2)
=
[o1, o3] by
A174,
A70;
hereby
assume
A176: f
|> (f1
(*) f2);
per cases by
A176,
A107;
suppose ex o1 be
Element of O st f
= o1 & (f1
(*) f2)
= o1;
then
consider o11 be
Element of O such that
A177: f
= o11 & (f1
(*) f2)
= o11;
thus f
|> f1 by
A177,
A175;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & ((f
=
[o1, o2] & (f1
(*) f2)
= o1) or (f
= o2 & (f1
(*) f2)
=
[o1, o2]));
then
consider o11,o12 be
Element of O such that
A178: o11
in o12 & ((f
=
[o11, o12] & (f1
(*) f2)
= o11) or (f
= o12 & (f1
(*) f2)
=
[o11, o12]));
o1
= o11 & o3
= o12 by
A178,
A175,
XTUPLE_0: 1;
hence f
|> f1 by
A178,
A174,
A70,
A60;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & f
=
[o2, o3] & (f1
(*) f2)
=
[o1, o2];
then
consider o11,o12,o13 be
Element of O such that
A179: o11
in o12 & o12
in o13 & f
=
[o12, o13] & (f1
(*) f2)
=
[o11, o12];
o1
= o11 & o3
= o12 by
A175,
A179,
XTUPLE_0: 1;
hence f
|> f1 by
A179,
A174,
A70;
end;
end;
assume
A180: f
|> f1;
per cases by
A180,
A107;
suppose ex o1 be
Element of O st f
= o1 & f1
= o1;
then
consider o11 be
Element of O such that
A181: f
= o11 & f1
= o11;
thus f
|> (f1
(*) f2) by
A174,
A181;
end;
suppose ex o1,o2 be
Element of O st o1
in o2 & ((f
=
[o1, o2] & f1
= o1) or (f
= o2 & f1
=
[o1, o2]));
then
consider o11,o12 be
Element of O such that
A182: o11
in o12 & ((f
=
[o11, o12] & f1
= o11) or (f
= o12 & f1
=
[o11, o12]));
per cases by
A182;
suppose
A183: f
=
[o11, o12] & f1
= o11;
thus f
|> (f1
(*) f2) by
A183,
A174;
end;
suppose f
= o12 & f1
=
[o11, o12];
then
A184: o2
= o11 & o12
= o3 by
A174,
XTUPLE_0: 1;
o1
in o3 by
A174,
ORDINAL1: 10;
hence f
|> (f1
(*) f2) by
A184,
A175,
A182,
A174,
A60;
end;
end;
suppose ex o1,o2,o3 be
Element of O st o1
in o2 & o2
in o3 & f
=
[o2, o3] & f1
=
[o1, o2];
then
consider o11,o12,o13 be
Element of O such that
A185: o11
in o12 & o12
in o13 & f
=
[o12, o13] & f1
=
[o11, o12];
A186: o2
= o11 & o3
= o12 by
A174,
A185,
XTUPLE_0: 1;
o1
in o3 by
A174,
ORDINAL1: 10;
hence f
|> (f1
(*) f2) by
A185,
A186,
A175,
A70;
end;
end;
end;
reconsider C as
strict non
empty
composable
with_identities
CategoryStr by
A104,
A103,
CAT_6:def 7,
CAT_6:def 12,
A149,
A148,
CAT_6:def 9,
CAT_6:def 11;
A187: for x be
object holds x
in (
Ob C) iff x
in O
proof
let x be
object;
hereby
assume
A188: x
in (
Ob C);
reconsider f = x as
morphism of C by
A188;
x
in (
Mor C) by
A188;
then
A189: f
in X by
CAT_6:def 1;
per cases by
A189,
XBOOLE_0:def 3;
suppose f
in O;
hence x
in O;
end;
suppose f
in X1;
then
consider o1,o2 be
Element of O such that
A190: f
=
[o1, o2] & o1
in o2;
reconsider f1 = o1, f2 = o2 as
morphism of C by
A52;
A191: f2 is
identity by
A94;
A192: (
cod f)
= o2 by
A190,
A60,
A191,
CAT_6: 27;
f is
identity by
A188,
CAT_6: 22;
hence x
in O by
A192,
A190,
Th6;
end;
end;
assume
A193: x
in O;
then
reconsider o = x as
Element of O;
o
in X by
A193,
XBOOLE_0:def 3;
then
reconsider f = o as
morphism of C by
CAT_6:def 1;
f is
Object of C by
A94,
CAT_6: 22;
hence x
in (
Ob C);
end;
then
A194: (
Ob C)
= O by
TARSKI: 2;
A195: for o1,o2 be
Object of C, f be
morphism of C st f
in (
Hom (o1,o2)) holds (f
= o1 & o1
= o2) or (f
=
[o1, o2] & o1
in o2)
proof
let o1,o2 be
Object of C;
let f be
morphism of C;
assume f
in (
Hom (o1,o2));
then
A196: (
dom f)
= o1 & (
cod f)
= o2 by
Th20;
assume
A197: not (f
= o1 & o1
= o2);
per cases by
A49;
suppose f is
Element of O;
then f is
identity by
A194,
CAT_6: 22;
then o1
= f & o2
= f by
A196,
Th6;
hence thesis by
A197;
end;
suppose ex o1,o2 be
Element of O st f
=
[o1, o2] & o1
in o2;
then
consider o11,o22 be
Element of O such that
A198: f
=
[o11, o22] & o11
in o22;
A199: o11
in (
Ob C) & o22
in (
Ob C) by
A194;
reconsider f1 = o11, f2 = o22 as
morphism of C by
A199;
f1 is
identity by
A94;
then
A200: (
dom f)
= o11 by
A198,
A65,
CAT_6: 26;
f2 is
identity by
A94;
hence thesis by
A198,
A200,
A196,
A60,
CAT_6: 27;
end;
end;
A201: for o1,o2 be
Object of C, f1,f2 be
morphism of C st f1
in (
Hom (o1,o2)) & f2
in (
Hom (o1,o2)) holds f1
= f2
proof
let o1,o2 be
Object of C;
let f1,f2 be
morphism of C;
assume
A202: f1
in (
Hom (o1,o2));
assume
A203: f2
in (
Hom (o1,o2));
per cases by
A202,
A195;
suppose
A204: f1
= o1 & o1
= o2;
per cases by
A203,
A195;
suppose f2
= o1 & o1
= o2;
hence thesis by
A204;
end;
suppose f2
=
[o1, o2] & o1
in o2;
hence thesis by
A204;
end;
end;
suppose
A205: f1
=
[o1, o2] & o1
in o2;
per cases by
A203,
A195;
suppose f2
= o1 & o1
= o2;
hence thesis by
A205;
end;
suppose f2
=
[o1, o2] & o1
in o2;
hence thesis by
A205;
end;
end;
end;
then C is
preorder;
then
reconsider C as
strict
preorder
category;
take C;
thus
A206: (
Ob C)
= O by
A187,
TARSKI: 2;
thus
A207: for o1,o2 be
Object of C st o1
in o2 holds (
Hom (o1,o2))
=
{
[o1, o2]}
proof
let o1,o2 be
Object of C;
A208: o1
in (
Ob C) & o2
in (
Ob C) by
SUBSET_1:def 1;
assume
A209: o1
in o2;
reconsider o11 = o1, o22 = o2 as
Element of O by
A187;
consider f be
morphism of C such that
A210: f
=
[o11, o22] by
A209,
A53;
reconsider f1 = o1, f2 = o2 as
morphism of C by
A208;
A211: f1 is
identity by
A94,
A206;
A212: (
dom f)
= o1 by
A210,
A209,
A65,
A211,
CAT_6: 26;
A213: f2 is
identity by
A94,
A206;
(
cod f)
= o2 by
A210,
A209,
A60,
A213,
CAT_6: 27;
then f
in { ff where ff be
morphism of C : (
dom ff)
= o1 & (
cod ff)
= o2 } by
A212;
then
A214: f
in (
Hom (o1,o2)) by
Def2;
for x be
object holds x
in (
Hom (o1,o2)) iff x
=
[o1, o2] by
A210,
A214,
A201;
hence (
Hom (o1,o2))
=
{
[o1, o2]} by
TARSKI:def 1;
end;
for a,b be
object holds
[a, b]
in (
RelOb C) iff
[a, b]
in (
RelIncl O)
proof
let a,b be
object;
hereby
assume
[a, b]
in (
RelOb C);
then
consider o1,o2 be
Object of C such that
A215:
[a, b]
=
[o1, o2] & ex f be
morphism of C st f
in (
Hom (o1,o2));
consider f be
morphism of C such that
A216: f
in (
Hom (o1,o2)) by
A215;
A217: (
dom f)
= o1 & (
cod f)
= o2 by
A216,
Th20;
A218: o1
c= o2
proof
per cases by
A49;
suppose f is
Element of O;
then f is
identity by
A94;
then (
dom f)
= f & (
cod f)
= f by
Th6;
hence thesis by
A217;
end;
suppose ex o1,o2 be
Element of O st f
=
[o1, o2] & o1
in o2;
then
consider o11,o22 be
Element of O such that
A219: f
=
[o11, o22] & o11
in o22;
o11
in O & o22
in O by
A3;
then
reconsider f1 = o11, f2 = o22 as
morphism of C by
A206;
A220: f1 is
identity by
A94;
A221: f2 is
identity by
A94;
o1
= o11 & o2
= o22 by
A219,
A65,
A220,
CAT_6: 26,
A217,
A60,
A221,
CAT_6: 27;
hence thesis by
A219,
ORDINAL1:def 2;
end;
end;
thus
[a, b]
in (
RelIncl O) by
A206,
A215,
A218,
WELLORD2:def 1;
end;
assume
A222:
[a, b]
in (
RelIncl O);
then
A223: a
in (
field (
RelIncl O)) & b
in (
field (
RelIncl O)) by
RELAT_1: 15;
then
A224: a
in O & b
in O by
WELLORD2:def 1;
reconsider o1 = a, o2 = b as
Object of C by
A223,
A206,
WELLORD2:def 1;
A225: o1
c= o2 by
A222,
A224,
WELLORD2:def 1;
ex f be
morphism of C st f
in (
Hom (o1,o2))
proof
per cases by
A224,
ORDINAL1:def 3;
suppose
A226: o1
in o2;
reconsider o11 = o1, o22 = o2 as
Element of O by
A223,
WELLORD2:def 1;
consider f be
morphism of C such that
A227: f
=
[o11, o22] by
A226,
A53;
f
in
{
[o1, o2]} by
A227,
TARSKI:def 1;
then f
in (
Hom (o1,o2)) by
A226,
A207;
hence thesis;
end;
suppose o1
= o2 or o2
in o1;
then o1
= o2 or o2
c= o1 by
A224,
ORDINAL1:def 2;
then
A228: o1
= o2 by
A225,
XBOOLE_0:def 10;
o1
in (
Hom (o1,o1)) by
Th21;
hence thesis by
A228;
end;
end;
hence
[a, b]
in (
RelOb C);
end;
hence (
RelOb C)
= (
RelIncl O) by
RELAT_1:def 2;
thus thesis by
CAT_6:def 1;
end;
end;
definition
let O be
ordinal
number;
let C be
composable
with_identities
CategoryStr;
::
CAT_7:def14
attr C is O
-ordered means
:
Def14: ((
RelOb C),(
RelIncl O))
are_isomorphic ;
end
registration
let O be non
empty
ordinal
number;
cluster O
-ordered -> non
empty for
composable
with_identities
CategoryStr;
correctness
proof
let C be
composable
with_identities
CategoryStr;
assume
A1: C is O
-ordered;
assume
A2: C is
empty;
consider F be
Function such that
A3: F
is_isomorphism_of ((
RelOb C),(
RelIncl O)) by
A1,
WELLORD1:def 8;
(
dom F)
= (
field (
RelOb C)) by
A3,
WELLORD1:def 7
.= ((
dom (
RelOb C))
\/ (
rng (
RelOb C))) by
RELAT_1:def 6
.=
{} by
A2;
then
A4: F
=
{} ;
(
field (
RelIncl O))
= (
rng F) by
A3,
WELLORD1:def 7;
then ((
dom (
RelIncl O))
\/ (
rng (
RelIncl O)))
=
{} by
A4,
RELAT_1:def 6;
hence contradiction;
end;
end
registration
let O be
ordinal
number;
cluster
strictO
-ordered
preorder for
composable
with_identities
CategoryStr;
correctness
proof
consider C be
strict
preorder
category such that
A1: (
Ob C)
= O & (for o1,o2 be
Object of C st o1
in o2 holds (
Hom (o1,o2))
=
{
[o1, o2]}) & (
RelOb C)
= (
RelIncl O) & (
Mor C)
= (O
\/ {
[o1, o2] where o1,o2 be
Element of O : o1
in o2 }) by
Th37;
take C;
thus thesis by
A1,
WELLORD1: 38;
end;
end
registration
let O be
empty
ordinal
number;
cluster O
-ordered ->
empty for
composable
with_identities
CategoryStr;
correctness
proof
let C be
composable
with_identities
CategoryStr;
assume C is O
-ordered;
then
consider F be
Function such that
A1: F
is_isomorphism_of ((
RelOb C),(
RelIncl O)) by
WELLORD1:def 8;
(
rng F)
= (
field (
RelIncl O)) by
A1,
WELLORD1:def 7
.= ((
dom (
RelIncl O))
\/ (
rng (
RelIncl O))) by
RELAT_1:def 6
.= (
{}
\/ (
rng (
RelIncl O)))
.=
{} ;
then
A2: F
=
{} ;
(
field (
RelOb C))
= (
dom F) by
A1,
WELLORD1:def 7;
then ((
dom (
RelOb C))
\/ (
rng (
RelOb C)))
=
{} by
A2,
RELAT_1:def 6;
hence thesis;
end;
end
theorem ::
CAT_7:38
Th38: for O1,O2 be
ordinal
number, C1 be O1
-ordered
preorder
category, C2 be O2
-ordered
preorder
category holds O1
= O2 iff C1
~= C2
proof
let O1,O2 be
ordinal
number;
let C1 be O1
-ordered
preorder
category;
let C2 be O2
-ordered
preorder
category;
thus O1
= O2 implies C1
~= C2
proof
assume
A1: O1
= O2;
per cases ;
suppose O1 is
empty;
hence thesis by
A1,
Th13;
end;
suppose
A2: O1 is non
empty;
then
reconsider D1 = C1, D2 = C2 as non
empty
category by
A1;
consider F1 be
Function such that
A3: F1
is_isomorphism_of ((
RelOb C1),(
RelIncl O1)) by
Def14,
WELLORD1:def 8;
consider F2 be
Function such that
A4: F2
is_isomorphism_of ((
RelOb C2),(
RelIncl O2)) by
Def14,
WELLORD1:def 8;
A5: (F2
" )
is_isomorphism_of ((
RelIncl O2),(
RelOb C2)) by
A4,
WELLORD1: 39;
set F3 = ((F2
" )
* F1);
A6: F3
is_isomorphism_of ((
RelOb C1),(
RelOb C2)) by
A1,
A3,
A5,
WELLORD1: 41;
consider F4 be
Function of C1, (
RelOb C1) such that
A7: F4 is
bijective & for f be
morphism of C1 holds (F4
. f)
=
[(
dom f), (
cod f)] by
A2,
Th36;
consider F5 be
Function of C2, (
RelOb C2) such that
A8: F5 is
bijective & for f be
morphism of C2 holds (F5
. f)
=
[(
dom f), (
cod f)] by
A1,
A2,
Th36;
A9: (
dom F3)
= (
field (
RelOb C1)) & (
rng F3)
= (
field (
RelOb C2)) & F3 is
one-to-one & for a,b be
set holds
[a, b]
in (
RelOb C1) iff (a
in (
field (
RelOb C1)) & b
in (
field (
RelOb C1)) &
[(F3
. a), (F3
. b)]
in (
RelOb C2)) by
A6,
WELLORD1:def 7;
A10: (
field (
RelOb C1))
= ((
dom (
RelOb C1))
\/ (
rng (
RelOb C1))) by
RELAT_1:def 6
.= ((
dom (
RelOb C1))
\/ (
Ob C1)) by
Th34
.= ((
Ob C1)
\/ (
Ob C1)) by
Th34
.= (
Ob C1);
defpred
P[
object,
object] means for a,b be
set st $1
=
[a, b] holds $2
=
[(F3
. a), (F3
. b)];
A11: for x be
Element of (
RelOb D1) holds ex y be
Element of (
RelOb D2) st
P[x, y]
proof
let x be
Element of (
RelOb D1);
x
in (
RelOb D1);
then
consider o1,o2 be
Object of D1 such that
A12: x
=
[o1, o2] & ex f be
morphism of D1 st f
in (
Hom (o1,o2));
reconsider y =
[(F3
. o1), (F3
. o2)] as
Element of (
RelOb D2) by
A12,
A6,
WELLORD1:def 7;
take y;
for a,b be
set st x
=
[a, b] holds y
=
[(F3
. a), (F3
. b)]
proof
let a,b be
set;
assume x
=
[a, b];
then a
= o1 & b
= o2 by
A12,
XTUPLE_0: 1;
hence y
=
[(F3
. a), (F3
. b)];
end;
hence
P[x, y];
end;
consider F33 be
Function of (
RelOb D1), (
RelOb D2) such that
A13: for x be
Element of (
RelOb D1) holds
P[x, (F33
. x)] from
FUNCT_2:sch 3(
A11);
A14: (
rng F5)
= (
dom (F5
" )) & (
dom F5)
= (
rng (F5
" )) by
A8,
FUNCT_1: 33;
set F = (((F5
" )
* F33)
* F4);
(
rng F33)
c= (
RelOb C2);
then (
rng F33)
c= (
rng F5) by
A8,
FUNCT_2:def 3;
then
A15: (
dom ((F5
" )
* F33))
= (
dom F33) by
A14,
RELAT_1: 27;
(
RelOb C1)
c= (
dom F33) by
FUNCT_2:def 1;
then (
rng F4)
c= (
dom F33) by
XBOOLE_1: 1;
then
A16: (
dom F)
= (
dom F4) by
A15,
RELAT_1: 27;
then
A17: (
dom F)
= the
carrier of C1 by
FUNCT_2:def 1;
for y be
object st y
in (
RelOb C2) holds y
in (
rng F33)
proof
let y be
object;
assume y
in (
RelOb C2);
then
consider o1,o2 be
Object of C2 such that
A18: y
=
[o1, o2] & ex g be
morphism of C2 st g
in (
Hom (o1,o2));
A19: (
rng F3)
= ((
dom (
RelOb C2))
\/ (
rng (
RelOb C2))) by
A9,
RELAT_1:def 6
.= ((
dom (
RelOb C2))
\/ (
Ob C2)) by
Th34
.= ((
Ob C2)
\/ (
Ob C2)) by
Th34
.= (
Ob D2);
consider x1 be
object such that
A20: x1
in (
dom F3) & o1
= (F3
. x1) by
A19,
FUNCT_1:def 3;
consider x2 be
object such that
A21: x2
in (
dom F3) & o2
= (F3
. x2) by
A19,
FUNCT_1:def 3;
reconsider x1, x2 as
set by
A20,
A21;
set x =
[x1, x2];
A22: x1
in (
field (
RelOb C1)) & x2
in (
field (
RelOb C1)) by
A20,
A21,
A6,
WELLORD1:def 7;
[(F3
. x1), (F3
. x2)]
in (
RelOb C2) by
A18,
A20,
A21;
then
reconsider x as
Element of (
RelOb D1) by
A22,
A6,
WELLORD1:def 7;
A23: (
dom F33)
= (
RelOb D1) by
FUNCT_2:def 1;
(F33
. x)
=
[(F3
. x1), (F3
. x2)] by
A13;
hence y
in (
rng F33) by
A23,
A18,
A20,
A21,
FUNCT_1:def 3;
end;
then (
RelOb C2)
c= (
rng F33) by
TARSKI:def 3;
then (
rng F5)
c= (
rng F33) by
A8,
FUNCT_2:def 3;
then (
rng ((F5
" )
* F33))
= (
rng (F5
" )) by
A14,
RELAT_1: 28;
then
A24: (
rng ((F5
" )
* F33))
= the
carrier of C2 by
A14,
FUNCT_2:def 1;
(
dom F33)
c= (
RelOb C1);
then (
dom F33)
c= (
rng F4) by
A7,
FUNCT_2:def 3;
then
A25: (
rng F)
= the
carrier of C2 by
A24,
A15,
RELAT_1: 28;
then
reconsider F as
Functor of C1, C2 by
A17,
FUNCT_2: 1;
for x1,x2 be
object st x1
in (
dom F33) & x2
in (
dom F33) & (F33
. x1)
= (F33
. x2) holds x1
= x2
proof
let x1,x2 be
object;
assume x1
in (
dom F33);
then x1
in (
RelOb D1);
then
consider o11,o12 be
Object of D1 such that
A26: x1
=
[o11, o12] & ex f1 be
morphism of D1 st f1
in (
Hom (o11,o12));
A27:
[o11, o12]
in (
RelOb C1) by
A26;
reconsider x11 = x1 as
Element of (
RelOb D1) by
A26,
A27;
assume x2
in (
dom F33);
then x2
in (
RelOb D1);
then
consider o21,o22 be
Object of D1 such that
A28: x2
=
[o21, o22] & ex f1 be
morphism of D1 st f1
in (
Hom (o21,o22));
A29:
[o21, o22]
in (
RelOb C1) by
A28;
reconsider x22 = x2 as
Element of (
RelOb D1) by
A28,
A29;
assume
A30: (F33
. x1)
= (F33
. x2);
(F33
. x11)
=
[(F3
. o11), (F3
. o12)] & (F33
. x22)
=
[(F3
. o21), (F3
. o22)] by
A13,
A26,
A28;
then (F3
. o11)
= (F3
. o21) & (F3
. o12)
= (F3
. o22) by
A30,
XTUPLE_0: 1;
then o11
= o21 & o12
= o22 by
A10,
A9,
FUNCT_1:def 4;
hence x1
= x2 by
A26,
A28;
end;
then
A31: F33 is
one-to-one by
FUNCT_1:def 4;
A32: F is
onto by
A25,
FUNCT_2:def 3;
A33: for f be
morphism of C1 holds (
dom (F
. f))
= (F3
. (
dom f)) & (
cod (F
. f))
= (F3
. (
cod f))
proof
let f be
morphism of C1;
reconsider x = f as
object;
x
in (
Mor C1) by
A2,
SUBSET_1:def 1;
then
A34: x
in (
dom F4) by
A17,
A16,
CAT_6:def 1;
f
in (
Hom ((
dom f),(
cod f))) by
A2,
Th20;
then
A35:
[(
dom f), (
cod f)]
in (
RelOb D1);
then
A36:
[(
dom f), (
cod f)]
in (
dom F33) by
FUNCT_2:def 1;
reconsider x1 =
[(
dom f), (
cod f)] as
Element of (
RelOb D1) by
A35;
A37: for a,b be
set st x1
=
[a, b] holds (F33
. x1)
=
[(F3
. a), (F3
. b)] by
A13;
[(F3
. (
dom f)), (F3
. (
cod f))]
in (
RelOb C2) by
A35,
A6,
WELLORD1:def 7;
then
A38:
[(F3
. (
dom f)), (F3
. (
cod f))]
in (
rng F5) by
A8,
FUNCT_2:def 3;
A39: (F
. f)
= ((((F5
" )
* F33)
* F4)
. x) by
CAT_6:def 21
.= (((F5
" )
* F33)
. (F4
. x)) by
A34,
FUNCT_1: 13
.= (((F5
" )
* F33)
.
[(
dom f), (
cod f)]) by
A7
.= ((F5
" )
. (F33
.
[(
dom f), (
cod f)])) by
A36,
FUNCT_1: 13
.= ((F5
" )
.
[(F3
. (
dom f)), (F3
. (
cod f))]) by
A37;
[(
dom (F
. f)), (
cod (F
. f))]
= (F5
. ((F5
" )
.
[(F3
. (
dom f)), (F3
. (
cod f))])) by
A8,
A39
.=
[(F3
. (
dom f)), (F3
. (
cod f))] by
A8,
A38,
FUNCT_1: 35;
hence thesis by
XTUPLE_0: 1;
end;
for f1,f2 be
morphism of C1 st f1
|> f2 holds (F
. f1)
|> (F
. f2) & (F
. (f1
(*) f2))
= ((F
. f1)
(*) (F
. f2))
proof
let f1,f2 be
morphism of C1;
assume
A40: f1
|> f2;
(
dom (F
. f1))
= (F3
. (
dom f1)) by
A33
.= (F3
. (
cod f2)) by
A2,
A40,
Th5
.= (
cod (F
. f2)) by
A33;
hence
A41: (F
. f1)
|> (F
. f2) by
Th5;
set g1 = (F
. (f1
(*) f2));
set g2 = ((F
. f1)
(*) (F
. f2));
A42: (
dom g1)
= (F3
. (
dom (f1
(*) f2))) by
A33
.= (F3
. (
dom f2)) by
A40,
Th4
.= (
dom (F
. f2)) by
A33
.= (
dom g2) by
A41,
Th4;
A43: (
cod g1)
= (F3
. (
cod (f1
(*) f2))) by
A33
.= (F3
. (
cod f1)) by
A40,
Th4
.= (
cod (F
. f1)) by
A33
.= (
cod g2) by
A41,
Th4;
A44: g1
in (
Hom ((
dom g1),(
cod g1))) by
Th20;
g2
in (
Hom ((
dom g1),(
cod g1))) by
A42,
A43,
Th20;
hence (F
. (f1
(*) f2))
= ((F
. f1)
(*) (F
. f2)) by
A44,
Def12;
end;
then
A45: F is
multiplicative by
CAT_6:def 23;
for f be
morphism of C1 st f is
identity holds (F
. f) is
identity
proof
let f be
morphism of C1;
assume
A46: f is
identity;
then
A47: (
dom f)
= f by
Th6
.= (
cod f) by
A46,
Th6;
A48: for g1 be
morphism of C2 st (F
. f)
|> g1 holds ((F
. f)
(*) g1)
= g1
proof
let g1 be
morphism of C2;
assume
A49: (F
. f)
|> g1;
set g2 = ((F
. f)
(*) g1);
A50: (
dom g2)
= (
dom g1) by
A49,
Th4;
A51: (
cod g2)
= (
cod (F
. f)) by
A49,
Th4
.= (F3
. (
dom f)) by
A33,
A47
.= (
dom (F
. f)) by
A33
.= (
cod g1) by
A49,
Th5;
A52: g1
in (
Hom ((
dom g1),(
cod g1))) by
A1,
A2,
Th20;
g2
in (
Hom ((
dom g1),(
cod g1))) by
A50,
A51,
Th20;
hence ((F
. f)
(*) g1)
= g1 by
A52,
Def12;
end;
then (F
. f) is
left_identity by
CAT_6:def 4;
then (F
. f) is
right_identity by
CAT_6: 9;
hence (F
. f) is
identity by
A48,
CAT_6:def 4,
CAT_6:def 14;
end;
then F is
identity-preserving by
CAT_6:def 22;
hence C1
~= C2 by
A32,
Th12,
A45,
CAT_6:def 25,
A8,
A7,
A31;
end;
end;
thus C1
~= C2 implies O1
= O2
proof
assume C1
~= C2;
then
A53: ((
RelOb C1),(
RelOb C2))
are_isomorphic by
Th35;
A54: ((
RelOb C1),(
RelIncl O1))
are_isomorphic by
Def14;
((
RelOb C2),(
RelIncl O2))
are_isomorphic by
Def14;
then ((
RelOb C1),(
RelIncl O2))
are_isomorphic by
A53,
WELLORD1: 42;
then ((
RelIncl O2),(
RelOb C1))
are_isomorphic by
WELLORD1: 40;
hence O1
= O2 by
A54,
WELLORD1: 42,
WELLORD2: 10;
end;
end;
definition
let O be
ordinal
number;
::
CAT_7:def15
func
OrdC (O) ->
strictO
-ordered
preorder
category equals the
strictO
-ordered
preorder
category;
correctness ;
end
theorem ::
CAT_7:39
Th39: ex f be
morphism of (
OrdC 2) st not f is
identity & (
Ob (
OrdC 2))
=
{(
dom f), (
cod f)} & (
Mor (
OrdC 2))
=
{(
dom f), (
cod f), f} & ((
dom f),(
cod f),f)
are_mutually_distinct
proof
consider C be
strict
preorder
category such that
A1: (
Ob C)
= 2 and for o1,o2 be
Object of C st o1
in o2 holds (
Hom (o1,o2))
=
{
[o1, o2]} and
A2: (
RelOb C)
= (
RelIncl 2) and
A3: (
Mor C)
= (2
\/ {
[o1, o2] where o1,o2 be
Element of 2 : o1
in o2 }) by
Th37;
A4: C is 2
-ordered by
A2,
WELLORD1: 38;
then
A5: C
~= (
OrdC 2) by
Th38;
consider F be
Functor of C, (
OrdC 2), G be
Functor of (
OrdC 2), C such that
A6: F is
covariant & G is
covariant and
A7: (G
(*) F)
= (
id C) & (F
(*) G)
= (
id (
OrdC 2)) by
A4,
Th38,
CAT_6:def 28;
0
in 1 &
0 is
Element of 2 & 1 is
Element of 2 by
CARD_1: 49,
CARD_1: 50,
TARSKI:def 1,
TARSKI:def 2;
then
A8:
[
0 , 1]
in {
[o1, o2] where o1,o2 be
Element of 2 : o1
in o2 };
then
A9:
[
0 , 1]
in (
Mor C) by
A3,
XBOOLE_0:def 3;
reconsider g =
[
0 , 1] as
morphism of C by
A8,
A3,
XBOOLE_0:def 3;
A10: C is non
empty by
A1;
A11: not g is
identity
proof
assume g is
identity;
then g is
Object of C by
A10,
CAT_6: 22;
hence contradiction by
A1;
end;
set f = (F
. g);
take f;
thus
A12: not f is
identity
proof
assume
A13: f is
identity;
[
0 , 1]
in the
carrier of C by
A9,
CAT_6:def 1;
then ((
id the
carrier of C)
.
[
0 , 1])
=
[
0 , 1] by
FUNCT_1: 18;
then
A14: ((
id C)
.
[
0 , 1])
= g by
STRUCT_0:def 4;
(G
. (F
. g)) is
identity by
A13,
CAT_6:def 22,
A6,
CAT_6:def 25;
then ((G
(*) F)
. g) is
identity by
A6,
A10,
CAT_6: 34;
hence contradiction by
A11,
A7,
A10,
A14,
CAT_6:def 21;
end;
(
card (
Ob (
OrdC 2)))
= (
card 2) by
A1,
A5,
Th14;
then
consider x,y be
object such that
A15: x
<> y & (
Ob (
OrdC 2))
=
{x, y} by
CARD_2: 60;
A16: (
dom f)
= x or (
dom f)
= y by
A15,
TARSKI:def 2;
A17: (
dom f)
<> (
cod f)
proof
assume (
dom f)
= (
cod f);
then
A18: f
in (
Hom ((
dom f),(
dom f)));
(
id- (
dom f))
in (
Hom ((
dom f),(
dom f))) by
Def3;
hence contradiction by
A12,
A18,
Def12;
end;
hence
A19: (
Ob (
OrdC 2))
=
{(
dom f), (
cod f)} by
A15,
A16,
TARSKI:def 2;
for x be
object holds x
in (
Mor (
OrdC 2)) iff x
in
{(
dom f), (
cod f), f}
proof
let x be
object;
hereby
assume
A20: x
in (
Mor (
OrdC 2));
then
A21: x
in the
carrier of (
OrdC 2) by
CAT_6:def 1;
reconsider f1 = x as
morphism of (
OrdC 2) by
A20;
per cases ;
suppose f1 is
identity;
then f1 is
Object of (
OrdC 2) by
CAT_6: 22;
then x
= (
dom f) or x
= (
cod f) by
A19,
TARSKI:def 2;
hence x
in
{(
dom f), (
cod f), f} by
ENUMSET1:def 1;
end;
suppose
A22: not f1 is
identity;
A23: ((
id the
carrier of (
OrdC 2))
. x)
= x by
A21,
FUNCT_1: 18;
A24: (F
. (G
. f1))
= ((F
(*) G)
. f1) by
A6,
CAT_6: 34
.= ((
id the
carrier of (
OrdC 2))
. f1) by
A7,
STRUCT_0:def 4
.= f1 by
A23,
CAT_6:def 21;
not (G
. f1) is
identity by
A24,
A22,
CAT_6:def 22,
A6,
CAT_6:def 25;
then not (G
. f1)
in 2 by
A1,
A10,
CAT_6: 22;
then (G
. f1)
in {
[o1, o2] where o1,o2 be
Element of 2 : o1
in o2 } by
A3,
XBOOLE_0:def 3;
then
consider o1,o2 be
Element of 2 such that
A25: (G
. f1)
=
[o1, o2] & o1
in o2;
A26: o1
=
0 or o1
= 1 by
CARD_1: 50,
TARSKI:def 2;
o2
=
0 or o2
= 1 by
CARD_1: 50,
TARSKI:def 2;
hence x
in
{(
dom f), (
cod f), f} by
A25,
A26,
A24,
ENUMSET1:def 1,
CARD_1: 49,
TARSKI:def 1;
end;
end;
assume x
in
{(
dom f), (
cod f), f};
then
A27: x
in (
{(
dom f), (
cod f)}
\/
{f}) by
ENUMSET1: 3;
per cases by
A27,
A19,
XBOOLE_0:def 3;
suppose x
in (
Ob (
OrdC 2));
hence x
in (
Mor (
OrdC 2));
end;
suppose x
in
{f};
then x
= f by
TARSKI:def 1;
hence x
in (
Mor (
OrdC 2));
end;
end;
hence (
Mor (
OrdC 2))
=
{(
dom f), (
cod f), f} by
TARSKI: 2;
(
dom f)
<> (
cod f) & (
dom f)
<> f & (
cod f)
<> f by
A12,
A17,
CAT_6: 22;
hence ((
dom f),(
cod f),f)
are_mutually_distinct by
ZFMISC_1:def 5;
end;
definition
let C be non
empty
category;
let f be
morphism of C;
::
CAT_7:def16
func
MORPHISM (f) ->
covariant
Functor of (
OrdC 2), C means
:
Def16: for g be
morphism of (
OrdC 2) st not g is
identity holds (it
. g)
= f;
existence
proof
consider f1 be
morphism of (
OrdC 2) such that
A1: not f1 is
identity and (
Ob (
OrdC 2))
=
{(
dom f1), (
cod f1)} and
A2: (
Mor (
OrdC 2))
=
{(
dom f1), (
cod f1), f1} and
A3: ((
dom f1),(
cod f1),f1)
are_mutually_distinct by
Th39;
defpred
P[
object,
object] means ($1
= (
dom f1) implies $2
= (
dom f)) & ($1
= (
cod f1) implies $2
= (
cod f)) & ($1
= f1 implies $2
= f);
A4: for x be
object st x
in the
carrier of (
OrdC 2) holds ex y be
object st y
in the
carrier of C &
P[x, y]
proof
let x be
object;
assume x
in the
carrier of (
OrdC 2);
then
A5: x
in
{(
dom f1), (
cod f1), f1} by
CAT_6:def 1,
A2;
per cases by
A5,
ENUMSET1:def 1;
suppose
A6: x
= (
dom f1);
reconsider y = (
dom f) as
object;
take y;
y
in (
Ob C);
then y
in (
Mor C);
hence y
in the
carrier of C by
CAT_6:def 1;
thus
P[x, y] by
A6,
A3,
ZFMISC_1:def 5;
end;
suppose
A7: x
= (
cod f1);
reconsider y = (
cod f) as
object;
take y;
y
in (
Ob C);
then y
in (
Mor C);
hence y
in the
carrier of C by
CAT_6:def 1;
thus
P[x, y] by
A7,
A3,
ZFMISC_1:def 5;
end;
suppose
A8: x
= f1;
reconsider y = f as
object;
take y;
y
in (
Mor C);
hence y
in the
carrier of C by
CAT_6:def 1;
thus
P[x, y] by
A8,
A3,
ZFMISC_1:def 5;
end;
end;
consider F be
Function of the
carrier of (
OrdC 2), the
carrier of C such that
A9: for x be
object st x
in the
carrier of (
OrdC 2) holds
P[x, (F
. x)] from
FUNCT_2:sch 1(
A4);
reconsider F as
Functor of (
OrdC 2), C;
for g be
morphism of (
OrdC 2) st g is
identity holds (F
. g) is
identity
proof
let g be
morphism of (
OrdC 2);
assume
A10: g is
identity;
reconsider x = g as
object;
A11: (F
. x)
= (F
. g) by
CAT_6:def 21;
g
in (
Mor (
OrdC 2));
then x
in the
carrier of (
OrdC 2) by
CAT_6:def 1;
then
P[x, (F
. x)] by
A9;
hence (F
. g) is
identity by
A11,
CAT_6: 22,
A2,
A1,
A10,
ENUMSET1:def 1;
end;
then
A12: F is
identity-preserving by
CAT_6:def 22;
for g1,g2 be
morphism of (
OrdC 2) st g1
|> g2 holds (F
. g1)
|> (F
. g2) & (F
. (g1
(*) g2))
= ((F
. g1)
(*) (F
. g2))
proof
let g1,g2 be
morphism of (
OrdC 2);
assume
A13: g1
|> g2;
A14: for g be
morphism of (
OrdC 2) st g
= (
dom f1) holds (F
. g)
= (
dom f)
proof
let g be
morphism of (
OrdC 2);
assume
A15: g
= (
dom f1);
reconsider x = g as
object;
A16: (F
. x)
= (F
. g) by
CAT_6:def 21;
g
in (
Mor (
OrdC 2));
then x
in the
carrier of (
OrdC 2) by
CAT_6:def 1;
hence thesis by
A9,
A15,
A16;
end;
A17: for g be
morphism of (
OrdC 2) st g
= (
cod f1) holds (F
. g)
= (
cod f)
proof
let g be
morphism of (
OrdC 2);
assume
A18: g
= (
cod f1);
reconsider x = g as
object;
A19: (F
. x)
= (F
. g) by
CAT_6:def 21;
g
in (
Mor (
OrdC 2));
then x
in the
carrier of (
OrdC 2) by
CAT_6:def 1;
hence thesis by
A9,
A18,
A19;
end;
A20: for g be
morphism of (
OrdC 2) st g
= f1 holds (F
. g)
= f
proof
let g be
morphism of (
OrdC 2);
assume
A21: g
= f1;
reconsider x = g as
object;
A22: (F
. x)
= (F
. g) by
CAT_6:def 21;
g
in (
Mor (
OrdC 2));
then x
in the
carrier of (
OrdC 2) by
CAT_6:def 1;
hence thesis by
A9,
A21,
A22;
end;
per cases by
A2,
ENUMSET1:def 1;
suppose
A23: g1
= (
dom f1) & g2
= (
dom f1);
then
A24: (F
. g1)
= (
dom f) & (F
. g2)
= (
dom f) by
A14;
hence
A25: (F
. g1)
|> (F
. g2) by
CAT_6: 23;
thus (F
. (g1
(*) g2))
= (F
. g1) by
A23,
A13,
CAT_6: 23
.= ((F
. g1)
(*) (F
. g2)) by
A25,
A24,
CAT_6: 23;
end;
suppose
A26: g1
= (
dom f1) & g2
= (
cod f1);
then g1 is
identity & g2 is
identity by
CAT_6: 22;
then g1
= g2 by
A13,
Th7;
hence thesis by
A26,
A3,
ZFMISC_1:def 5;
end;
suppose
A27: g1
= (
dom f1) & g2
= f1;
then (
cod f1)
= g1 by
A13,
CAT_6: 22,
CAT_6: 27;
hence thesis by
A27,
A3,
ZFMISC_1:def 5;
end;
suppose
A28: g1
= (
cod f1) & g2
= (
dom f1);
then g1 is
identity & g2 is
identity by
CAT_6: 22;
then g1
= g2 by
A13,
Th7;
hence thesis by
A28,
A3,
ZFMISC_1:def 5;
end;
suppose
A29: g1
= (
cod f1) & g2
= (
cod f1);
then
A30: (F
. g1)
= (
cod f) & (F
. g2)
= (
cod f) by
A17;
hence
A31: (F
. g1)
|> (F
. g2) by
CAT_6: 23;
thus (F
. (g1
(*) g2))
= (F
. g1) by
A29,
A13,
CAT_6: 23
.= ((F
. g1)
(*) (F
. g2)) by
A31,
A30,
CAT_6: 23;
end;
suppose
A32: g1
= (
cod f1) & g2
= f1;
then
A33: (F
. g1)
= (
cod f) & (F
. g2)
= f by
A17,
A20;
hence (F
. g1)
|> (F
. g2) by
Th9;
thus (F
. (g1
(*) g2))
= (F
. g2) by
A32,
Th9
.= ((F
. g1)
(*) (F
. g2)) by
A33,
Th9;
end;
suppose
A34: g1
= f1 & g2
= (
dom f1);
then
A35: (F
. g1)
= f & (F
. g2)
= (
dom f) by
A14,
A20;
hence (F
. g1)
|> (F
. g2) by
Th8;
thus (F
. (g1
(*) g2))
= (F
. g1) by
A34,
Th8
.= ((F
. g1)
(*) (F
. g2)) by
A35,
Th8;
end;
suppose
A36: g1
= f1 & g2
= (
cod f1);
then (
dom f1)
= g2 by
A13,
CAT_6: 22,
CAT_6: 26;
hence thesis by
A36,
A3,
ZFMISC_1:def 5;
end;
suppose g1
= f1 & g2
= f1;
then (
dom f1)
= (
cod f1) by
A13,
Th5;
hence thesis by
A3,
ZFMISC_1:def 5;
end;
end;
then
reconsider F as
covariant
Functor of (
OrdC 2), C by
A12,
CAT_6:def 23,
CAT_6:def 25;
take F;
let g be
morphism of (
OrdC 2);
assume
A37: not g is
identity;
A38: g
= (
dom f1) or g
= (
cod f1) or g
= f1 by
A2,
ENUMSET1:def 1;
reconsider x = g as
object;
A39: (F
. x)
= (F
. g) by
CAT_6:def 21;
g
in (
Mor (
OrdC 2));
then x
in the
carrier of (
OrdC 2) by
CAT_6:def 1;
hence (F
. g)
= f by
A9,
A38,
A39,
A37,
CAT_6: 22;
end;
uniqueness
proof
let F1,F2 be
covariant
Functor of (
OrdC 2), C;
assume
A40: for g be
morphism of (
OrdC 2) st not g is
identity holds (F1
. g)
= f;
assume
A41: for g be
morphism of (
OrdC 2) st not g is
identity holds (F2
. g)
= f;
consider f1 be
morphism of (
OrdC 2) such that
A42: not f1 is
identity and (
Ob (
OrdC 2))
=
{(
dom f1), (
cod f1)} and
A43: (
Mor (
OrdC 2))
=
{(
dom f1), (
cod f1), f1} by
Th39;
for x be
object st x
in the
carrier of (
OrdC 2) holds (F1
. x)
= (F2
. x)
proof
let x be
object;
assume x
in the
carrier of (
OrdC 2);
then
A44: x
in
{(
dom f1), (
cod f1), f1} by
A43,
CAT_6:def 1;
A45: (F1
. f1)
= f by
A40,
A42
.= (F2
. f1) by
A41,
A42;
per cases by
A44,
ENUMSET1:def 1;
suppose
A46: x
= (
dom f1);
hence (F1
. x)
= (
dom (F1
. f1)) by
CAT_6: 32
.= (F2
. x) by
A46,
A45,
CAT_6: 32;
end;
suppose
A47: x
= (
cod f1);
hence (F1
. x)
= (
cod (F1
. f1)) by
CAT_6: 32
.= (F2
. x) by
A47,
A45,
CAT_6: 32;
end;
suppose
A48: x
= f1;
hence (F1
. x)
= (F1
. f1) by
CAT_6:def 21
.= (F2
. x) by
A45,
A48,
CAT_6:def 21;
end;
end;
hence F1
= F2 by
FUNCT_2: 12;
end;
end
theorem ::
CAT_7:40
Th40: for C be non
empty
category, f be
morphism of C st f is
identity holds for g be
morphism of (
OrdC 2) holds ((
MORPHISM f)
. g)
= f
proof
let C be non
empty
category;
let f be
morphism of C;
assume
A1: f is
identity;
let g be
morphism of (
OrdC 2);
consider f1 be
morphism of (
OrdC 2) such that
A2: not f1 is
identity & (
Ob (
OrdC 2))
=
{(
dom f1), (
cod f1)} & (
Mor (
OrdC 2))
=
{(
dom f1), (
cod f1), f1} & ((
dom f1),(
cod f1),f1)
are_mutually_distinct by
Th39;
per cases by
A2,
ENUMSET1:def 1;
suppose g
= (
dom f1);
hence ((
MORPHISM f)
. g)
= ((
MORPHISM f)
. (
dom f1)) by
CAT_6:def 21
.= (
dom ((
MORPHISM f)
. f1)) by
CAT_6: 32
.= (
dom f) by
A2,
Def16
.= f by
A1,
Th6;
end;
suppose g
= (
cod f1);
hence ((
MORPHISM f)
. g)
= ((
MORPHISM f)
. (
cod f1)) by
CAT_6:def 21
.= (
cod ((
MORPHISM f)
. f1)) by
CAT_6: 32
.= (
cod f) by
A2,
Def16
.= f by
A1,
Th6;
end;
suppose g
= f1;
hence thesis by
A2,
Def16;
end;
end;
begin
definition
let C be
category;
let c,c1,c2,d be
Object of C;
let f1 be
Morphism of c1, c;
let f2 be
Morphism of c2, c;
let p1 be
Morphism of d, c1;
let p2 be
Morphism of d, c2;
::
CAT_7:def17
pred d,p1,p2
is_pullback_of f1,f2 means
:
Def17: (f1
* p1)
= (f2
* p2) & for d1 be
Object of C, g1 be
Morphism of d1, c1, g2 be
Morphism of d1, c2 st (
Hom (d1,c1))
<>
{} & (
Hom (d1,c2))
<>
{} & (f1
* g1)
= (f2
* g2) holds (
Hom (d1,d))
<>
{} & ex h be
Morphism of d1, d st (p1
* h)
= g1 & (p2
* h)
= g2 & for h1 be
Morphism of d1, d st (p1
* h1)
= g1 & (p2
* h1)
= g2 holds h
= h1;
end
theorem ::
CAT_7:41
for C be non
empty
category, c,c1,c2,d,e be
Object of C, f1 be
Morphism of c1, c, f2 be
Morphism of c2, c, p1 be
Morphism of d, c1, p2 be
Morphism of d, c2, q1 be
Morphism of e, c1, q2 be
Morphism of e, c2 st (
Hom (c1,c))
<>
{} & (
Hom (c2,c))
<>
{} & (
Hom (d,c1))
<>
{} & (
Hom (d,c2))
<>
{} & (
Hom (e,c1))
<>
{} & (
Hom (e,c2))
<>
{} & (d,p1,p2)
is_pullback_of (f1,f2) & (e,q1,q2)
is_pullback_of (f1,f2) holds (d,e)
are_isomorphic
proof
let C be non
empty
category;
let c,c1,c2,d,e be
Object of C;
let f1 be
Morphism of c1, c;
let f2 be
Morphism of c2, c;
let p1 be
Morphism of d, c1;
let p2 be
Morphism of d, c2;
let q1 be
Morphism of e, c1;
let q2 be
Morphism of e, c2;
assume
A1: (
Hom (c1,c))
<>
{} & (
Hom (c2,c))
<>
{} & (
Hom (d,c1))
<>
{} & (
Hom (d,c2))
<>
{} & (
Hom (e,c1))
<>
{} & (
Hom (e,c2))
<>
{} ;
assume
A2: (d,p1,p2)
is_pullback_of (f1,f2);
assume
A3: (e,q1,q2)
is_pullback_of (f1,f2);
A4: (f1
* p1)
= (f2
* p2) & for d1 be
Object of C, g1 be
Morphism of d1, c1, g2 be
Morphism of d1, c2 st (
Hom (d1,c1))
<>
{} & (
Hom (d1,c2))
<>
{} & (f1
* g1)
= (f2
* g2) holds (
Hom (d1,d))
<>
{} & ex h be
Morphism of d1, d st (p1
* h)
= g1 & (p2
* h)
= g2 & for h1 be
Morphism of d1, d st (p1
* h1)
= g1 & (p2
* h1)
= g2 holds h
= h1 by
A1,
A2,
Def17;
A5: (f1
* q1)
= (f2
* q2) & for e1 be
Object of C, g1 be
Morphism of e1, c1, g2 be
Morphism of e1, c2 st (
Hom (e1,c1))
<>
{} & (
Hom (e1,c2))
<>
{} & (f1
* g1)
= (f2
* g2) holds (
Hom (e1,e))
<>
{} & ex h be
Morphism of e1, e st (q1
* h)
= g1 & (q2
* h)
= g2 & for h1 be
Morphism of e1, e st (q1
* h1)
= g1 & (q2
* h1)
= g2 holds h
= h1 by
A1,
A3,
Def17;
ex ff be
Morphism of d, e, gg be
Morphism of e, d st (
Hom (d,e))
<>
{} & (
Hom (e,d))
<>
{} & (gg
* ff)
= (
id- d) & (ff
* gg)
= (
id- e)
proof
consider f be
Morphism of d, e such that
A6: (q1
* f)
= p1 & (q2
* f)
= p2 & for h1 be
Morphism of d, e st (q1
* h1)
= p1 & (q2
* h1)
= p2 holds f
= h1 by
A4,
A1,
A3,
Def17;
consider g be
Morphism of e, d such that
A7: (p1
* g)
= q1 & (p2
* g)
= q2 & for h1 be
Morphism of e, d st (p1
* h1)
= q1 & (p2
* h1)
= q2 holds g
= h1 by
A5,
A1,
A2,
Def17;
take f, g;
thus
A8: (
Hom (d,e))
<>
{} by
A4,
A1,
A3,
Def17;
thus
A9: (
Hom (e,d))
<>
{} by
A5,
A1,
A2,
Def17;
set g11 = (q1
* f);
set g12 = (q2
* f);
consider h1 be
Morphism of d, d such that
A10: (p1
* h1)
= g11 & (p2
* h1)
= g12 & for h be
Morphism of d, d st (p1
* h)
= g11 & (p2
* h)
= g12 holds h1
= h by
A1,
A4,
A6;
A11: (p1
* (g
* f))
= g11 by
A1,
A7,
A9,
A8,
Th23;
A12: (p2
* (g
* f))
= g12 by
A1,
A7,
A9,
A8,
Th23;
A13: (p1
* (
id- d))
= g11 by
A1,
A6,
Th18;
A14: (p2
* (
id- d))
= g12 by
A1,
A6,
Th18;
thus (g
* f)
= h1 by
A10,
A11,
A12
.= (
id- d) by
A10,
A13,
A14;
set g21 = (p1
* g);
set g22 = (p2
* g);
consider h2 be
Morphism of e, e such that
A15: (q1
* h2)
= g21 & (q2
* h2)
= g22 & for h be
Morphism of e, e st (q1
* h)
= g21 & (q2
* h)
= g22 holds h2
= h by
A1,
A5,
A7;
A16: (q1
* (f
* g))
= g21 by
A1,
A6,
A9,
A8,
Th23;
A17: (q2
* (f
* g))
= g22 by
A1,
A6,
A9,
A8,
Th23;
A18: (q1
* (
id- e))
= g21 by
A1,
A7,
Th18;
A19: (q2
* (
id- e))
= g22 by
A1,
A7,
Th18;
thus (f
* g)
= h2 by
A15,
A16,
A17
.= (
id- e) by
A15,
A18,
A19;
end;
hence (d,e)
are_isomorphic ;
end;
theorem ::
CAT_7:42
for C be
category, c,c1,c2,d be
Object of C, f1 be
Morphism of c1, c, f2 be
Morphism of c2, c, p1 be
Morphism of d, c1, p2 be
Morphism of d, c2 st (
Hom (c1,c))
<>
{} & (
Hom (c2,c))
<>
{} & (
Hom (d,c1))
<>
{} & (
Hom (d,c2))
<>
{} & (d,p1,p2)
is_pullback_of (f1,f2) holds (d,p2,p1)
is_pullback_of (f2,f1)
proof
let C be
category;
let c,c1,c2,d be
Object of C;
let f1 be
Morphism of c1, c;
let f2 be
Morphism of c2, c;
let p1 be
Morphism of d, c1;
let p2 be
Morphism of d, c2;
assume
A1: (
Hom (c1,c))
<>
{} & (
Hom (c2,c))
<>
{} & (
Hom (d,c1))
<>
{} & (
Hom (d,c2))
<>
{} ;
assume
A2: (d,p1,p2)
is_pullback_of (f1,f2);
then
A3: (f1
* p1)
= (f2
* p2) & for d1 be
Object of C, g1 be
Morphism of d1, c1, g2 be
Morphism of d1, c2 st (
Hom (d1,c1))
<>
{} & (
Hom (d1,c2))
<>
{} & (f1
* g1)
= (f2
* g2) holds (
Hom (d1,d))
<>
{} & ex h be
Morphism of d1, d st (p1
* h)
= g1 & (p2
* h)
= g2 & for h1 be
Morphism of d1, d st (p1
* h1)
= g1 & (p2
* h1)
= g2 holds h
= h1 by
A1,
Def17;
for d1 be
Object of C, g2 be
Morphism of d1, c2, g1 be
Morphism of d1, c1 st (
Hom (d1,c2))
<>
{} & (
Hom (d1,c1))
<>
{} & (f2
* g2)
= (f1
* g1) holds (
Hom (d1,d))
<>
{} & ex h be
Morphism of d1, d st (p2
* h)
= g2 & (p1
* h)
= g1 & for h1 be
Morphism of d1, d st (p2
* h1)
= g2 & (p1
* h1)
= g1 holds h
= h1
proof
let d1 be
Object of C;
let g2 be
Morphism of d1, c2;
let g1 be
Morphism of d1, c1;
assume
A4: (
Hom (d1,c2))
<>
{} & (
Hom (d1,c1))
<>
{} & (f2
* g2)
= (f1
* g1);
hence (
Hom (d1,d))
<>
{} by
A2,
A1,
Def17;
consider h be
Morphism of d1, d such that
A5: (p1
* h)
= g1 & (p2
* h)
= g2 & for h1 be
Morphism of d1, d st (p1
* h1)
= g1 & (p2
* h1)
= g2 holds h
= h1 by
A4,
A2,
A1,
Def17;
take h;
thus thesis by
A5;
end;
hence (d,p2,p1)
is_pullback_of (f2,f1) by
A3,
A1,
Def17;
end;
theorem ::
CAT_7:43
for C be
category, c,c1,c2,d be
Object of C, f1 be
Morphism of c1, c, f2 be
Morphism of c2, c, p1 be
Morphism of d, c1, p2 be
Morphism of d, c2 st (
Hom (c1,c))
<>
{} & (
Hom (c2,c))
<>
{} & (
Hom (d,c1))
<>
{} & (
Hom (d,c2))
<>
{} & (d,p1,p2)
is_pullback_of (f1,f2) & f1 is
monomorphism holds p2 is
monomorphism
proof
let C be
category;
let c,c1,c2,d be
Object of C;
let f1 be
Morphism of c1, c;
let f2 be
Morphism of c2, c;
let p1 be
Morphism of d, c1;
let p2 be
Morphism of d, c2;
assume
A1: (
Hom (c1,c))
<>
{} & (
Hom (c2,c))
<>
{} & (
Hom (d,c1))
<>
{} & (
Hom (d,c2))
<>
{} ;
assume
A2: (d,p1,p2)
is_pullback_of (f1,f2);
then
A3: (f1
* p1)
= (f2
* p2) & for d1 be
Object of C, g1 be
Morphism of d1, c1, g2 be
Morphism of d1, c2 st (
Hom (d1,c1))
<>
{} & (
Hom (d1,c2))
<>
{} & (f1
* g1)
= (f2
* g2) holds (
Hom (d1,d))
<>
{} & ex h be
Morphism of d1, d st (p1
* h)
= g1 & (p2
* h)
= g2 & for h1 be
Morphism of d1, d st (p1
* h1)
= g1 & (p2
* h1)
= g2 holds h
= h1 by
A1,
Def17;
assume
A4: f1 is
monomorphism;
thus (
Hom (d,c2))
<>
{} by
A1;
let d1 be
Object of C;
assume
A5: (
Hom (d1,d))
<>
{} ;
let q1,q2 be
Morphism of d1, d;
assume
A6: (p2
* q1)
= (p2
* q2);
set p11 = (p1
* q1);
set p12 = (p2
* q1);
A7: (
Hom (d1,c1))
<>
{} & (
Hom (d1,c2))
<>
{} by
A1,
A5,
Th22;
(f1
* p11)
= ((f1
* p1)
* q1) by
A5,
A1,
Th23
.= (f2
* p12) by
A5,
A3,
A1,
Th23;
then
consider h be
Morphism of d1, d such that
A8: (p1
* h)
= p11 & (p2
* h)
= p12 & for h1 be
Morphism of d1, d st (p1
* h1)
= p11 & (p2
* h1)
= p12 holds h
= h1 by
A1,
A2,
Def17,
A7;
A9: q1
= h by
A8;
(f1
* (p1
* q2))
= ((f1
* p1)
* q2) by
A5,
A1,
Th23
.= (f2
* (p2
* q2)) by
A5,
A3,
A1,
Th23
.= ((f2
* p2)
* q1) by
A6,
A5,
A1,
Th23
.= (f1
* p11) by
A5,
A3,
A1,
Th23;
hence q1
= q2 by
A9,
A8,
A6,
A7,
A4;
end;
theorem ::
CAT_7:44
for C be non
empty
category, c,c1,c2,d be
Object of C, f1 be
Morphism of c1, c, f2 be
Morphism of c2, c, p1 be
Morphism of d, c1, p2 be
Morphism of d, c2 st (
Hom (c1,c))
<>
{} & (
Hom (c2,c))
<>
{} & (
Hom (d,c1))
<>
{} & (
Hom (d,c2))
<>
{} & (d,p1,p2)
is_pullback_of (f1,f2) & f1 is
isomorphism holds p2 is
isomorphism
proof
let C be non
empty
category;
let c,c1,c2,d be
Object of C;
let f1 be
Morphism of c1, c;
let f2 be
Morphism of c2, c;
let p1 be
Morphism of d, c1;
let p2 be
Morphism of d, c2;
assume
A1: (
Hom (c1,c))
<>
{} & (
Hom (c2,c))
<>
{} & (
Hom (d,c1))
<>
{} & (
Hom (d,c2))
<>
{} ;
assume
A2: (d,p1,p2)
is_pullback_of (f1,f2);
then
A3: (f1
* p1)
= (f2
* p2) & for d1 be
Object of C, g1 be
Morphism of d1, c1, g2 be
Morphism of d1, c2 st (
Hom (d1,c1))
<>
{} & (
Hom (d1,c2))
<>
{} & (f1
* g1)
= (f2
* g2) holds (
Hom (d1,d))
<>
{} & ex h be
Morphism of d1, d st (p1
* h)
= g1 & (p2
* h)
= g2 & for h1 be
Morphism of d1, d st (p1
* h1)
= g1 & (p2
* h1)
= g2 holds h
= h1 by
A1,
Def17;
assume
A4: f1 is
isomorphism;
consider g1 be
Morphism of c, c1 such that
A5: (g1
* f1)
= (
id- c1) & (f1
* g1)
= (
id- c) by
A4;
set g11 = (g1
* f2);
set g22 = (
id- c2);
A6: (
Hom (c2,c1))
<>
{} & (
Hom (c2,c2))
<>
{} & (
Hom (c1,c1))
<>
{} by
A1,
A4,
Th22;
A7: (f1
* g11)
= ((f1
* g1)
* f2) by
A4,
A1,
Th23
.= f2 by
A5,
A1,
Th18
.= (f2
* g22) by
A1,
Th18;
then
A8: (
Hom (c2,d))
<>
{} & ex h be
Morphism of c2, d st (p1
* h)
= g11 & (p2
* h)
= g22 & for h1 be
Morphism of c2, d st (p1
* h1)
= g11 & (p2
* h1)
= g22 holds h
= h1 by
A2,
A1,
Def17,
A6;
consider q2 be
Morphism of c2, d such that
A9: (p1
* q2)
= g11 & (p2
* q2)
= g22 & for h1 be
Morphism of c2, d st (p1
* h1)
= g11 & (p2
* h1)
= g22 holds q2
= h1 by
A6,
A2,
A1,
Def17,
A7;
set g33 = ((p1
* q2)
* p2);
A10: (
Hom (d,c))
<>
{} by
A1,
Th22;
(f1
* g33)
= (f1
* (g1
* (f2
* p2))) by
A9,
A4,
A1,
Th23
.= ((f1
* g1)
* (f2
* p2)) by
A10,
A4,
Th23
.= (f2
* p2) by
A10,
Th18,
A5;
then
consider h be
Morphism of d, d such that (p1
* h)
= g33 & (p2
* h)
= p2 and
A11: for h1 be
Morphism of d, d st (p1
* h1)
= g33 & (p2
* h1)
= p2 holds h
= h1 by
A1,
A2,
Def17;
A12: (p1
* (
id- d))
= p1 by
A1,
Th18
.= ((g1
* f1)
* p1) by
A1,
A5,
Th18
.= (g1
* (f1
* p1)) by
A1,
A4,
Th23
.= g33 by
A9,
A3,
A4,
A1,
Th23;
A13: (p2
* (
id- d))
= p2 by
A1,
Th18;
A14: (p1
* (q2
* p2))
= g33 by
A1,
A8,
Th23;
(p2
* (q2
* p2))
= ((p2
* q2)
* p2) by
A1,
A8,
Th23
.= p2 by
A1,
A9,
Th18;
then h
= (q2
* p2) by
A11,
A14;
hence p2 is
isomorphism by
A7,
A9,
A13,
A11,
A12,
A2,
A1,
Def17,
A6;
end;
theorem ::
CAT_7:45
for C be
category, c1,c2,c3,c4,c5,c6 be
Object of C, f1 be
Morphism of c1, c2, f2 be
Morphism of c2, c3, f3 be
Morphism of c1, c4, f4 be
Morphism of c2, c5, f5 be
Morphism of c3, c6, f6 be
Morphism of c4, c5, f7 be
Morphism of c5, c6 st (
Hom (c1,c2))
<>
{} & (
Hom (c2,c3))
<>
{} & (
Hom (c1,c4))
<>
{} & (
Hom (c2,c5))
<>
{} & (
Hom (c3,c6))
<>
{} & (
Hom (c4,c5))
<>
{} & (
Hom (c5,c6))
<>
{} & (c2,f2,f4)
is_pullback_of (f5,f7) holds (c1,f1,f3)
is_pullback_of (f4,f6) iff (c1,(f2
* f1),f3)
is_pullback_of (f5,(f7
* f6)) & (f4
* f1)
= (f6
* f3)
proof
let C be
category;
let c1,c2,c3,c4,c5,c6 be
Object of C;
let f1 be
Morphism of c1, c2;
let f2 be
Morphism of c2, c3;
let f3 be
Morphism of c1, c4;
let f4 be
Morphism of c2, c5;
let f5 be
Morphism of c3, c6;
let f6 be
Morphism of c4, c5;
let f7 be
Morphism of c5, c6;
assume
A1: (
Hom (c1,c2))
<>
{} & (
Hom (c2,c3))
<>
{} & (
Hom (c1,c4))
<>
{} & (
Hom (c2,c5))
<>
{} & (
Hom (c3,c6))
<>
{} & (
Hom (c4,c5))
<>
{} & (
Hom (c5,c6))
<>
{} ;
assume
A2: (c2,f2,f4)
is_pullback_of (f5,f7);
then
A3: (f5
* f2)
= (f7
* f4) & for d1 be
Object of C, g1 be
Morphism of d1, c3, g2 be
Morphism of d1, c5 st (
Hom (d1,c3))
<>
{} & (
Hom (d1,c5))
<>
{} & (f5
* g1)
= (f7
* g2) holds (
Hom (d1,c2))
<>
{} & ex h be
Morphism of d1, c2 st (f2
* h)
= g1 & (f4
* h)
= g2 & for h1 be
Morphism of d1, c2 st (f2
* h1)
= g1 & (f4
* h1)
= g2 holds h
= h1 by
A1,
Def17;
hereby
assume
A4: (c1,f1,f3)
is_pullback_of (f4,f6);
then
A5: (f4
* f1)
= (f6
* f3) & for d1 be
Object of C, g1 be
Morphism of d1, c2, g2 be
Morphism of d1, c4 st (
Hom (d1,c2))
<>
{} & (
Hom (d1,c4))
<>
{} & (f4
* g1)
= (f6
* g2) holds (
Hom (d1,c1))
<>
{} & ex h be
Morphism of d1, c1 st (f1
* h)
= g1 & (f3
* h)
= g2 & for h1 be
Morphism of d1, c1 st (f1
* h1)
= g1 & (f3
* h1)
= g2 holds h
= h1 by
A1,
Def17;
A6: (
Hom (c4,c6))
<>
{} & (
Hom (c1,c3))
<>
{} & (
Hom (c1,c4))
<>
{} by
A1,
Th22;
A7: (f5
* (f2
* f1))
= ((f5
* f2)
* f1) by
A1,
Th23
.= (f7
* (f6
* f3)) by
A3,
A5,
Th23,
A1
.= ((f7
* f6)
* f3) by
A1,
Th23;
for d1 be
Object of C, g1 be
Morphism of d1, c3, g2 be
Morphism of d1, c4 st (
Hom (d1,c3))
<>
{} & (
Hom (d1,c4))
<>
{} & (f5
* g1)
= ((f7
* f6)
* g2) holds (
Hom (d1,c1))
<>
{} & ex h be
Morphism of d1, c1 st ((f2
* f1)
* h)
= g1 & (f3
* h)
= g2 & for h1 be
Morphism of d1, c1 st ((f2
* f1)
* h1)
= g1 & (f3
* h1)
= g2 holds h
= h1
proof
let d1 be
Object of C;
let g1 be
Morphism of d1, c3;
let g2 be
Morphism of d1, c4;
assume
A8: (
Hom (d1,c3))
<>
{} ;
assume
A9: (
Hom (d1,c4))
<>
{} ;
assume
A10: (f5
* g1)
= ((f7
* f6)
* g2);
A11: (
Hom (d1,c5))
<>
{} by
A9,
A1,
Th22;
A12: (f5
* g1)
= (f7
* (f6
* g2)) by
A10,
A9,
A1,
Th23;
then
A13: (
Hom (d1,c2))
<>
{} & ex h be
Morphism of d1, c2 st (f2
* h)
= g1 & (f4
* h)
= (f6
* g2) & for h1 be
Morphism of d1, c2 st (f2
* h1)
= g1 & (f4
* h1)
= (f6
* g2) holds h
= h1 by
A1,
A2,
A11,
A8,
Def17;
consider g3 be
Morphism of d1, c2 such that
A14: (f2
* g3)
= g1 & (f4
* g3)
= (f6
* g2) & for h1 be
Morphism of d1, c2 st (f2
* h1)
= g1 & (f4
* h1)
= (f6
* g2) holds g3
= h1 by
A1,
A12,
A2,
A11,
A8,
Def17;
thus
A15: (
Hom (d1,c1))
<>
{} by
A1,
A13,
A9,
A4,
Def17;
consider h be
Morphism of d1, c1 such that
A16: (f1
* h)
= g3 & (f3
* h)
= g2 & for h1 be
Morphism of d1, c1 st (f1
* h1)
= g3 & (f3
* h1)
= g2 holds h
= h1 by
A1,
A14,
A13,
A9,
A4,
Def17;
take h;
thus ((f2
* f1)
* h)
= g1 by
A1,
A14,
A16,
A15,
Th23;
thus (f3
* h)
= g2 by
A16;
let h1 be
Morphism of d1, c1;
assume
A17: ((f2
* f1)
* h1)
= g1;
assume
A18: (f3
* h1)
= g2;
A19: (f2
* (f1
* h1))
= g1 by
A1,
A17,
A15,
Th23;
(f4
* (f1
* h1))
= ((f4
* f1)
* h1) by
A1,
A15,
Th23
.= (f6
* g2) by
A18,
A5,
A15,
Th23,
A1;
then g3
= (f1
* h1) by
A19,
A14;
hence h
= h1 by
A18,
A16;
end;
hence (c1,(f2
* f1),f3)
is_pullback_of (f5,(f7
* f6)) by
A1,
A6,
A7,
Def17;
thus (f4
* f1)
= (f6
* f3) by
A1,
A4,
Def17;
end;
A20: (
Hom (c1,c3))
<>
{} & (
Hom (c3,c6))
<>
{} & (
Hom (c4,c6))
<>
{} by
A1,
Th22;
assume
A21: (c1,(f2
* f1),f3)
is_pullback_of (f5,(f7
* f6));
assume
A22: (f4
* f1)
= (f6
* f3);
for d1 be
Object of C, g1 be
Morphism of d1, c2, g2 be
Morphism of d1, c4 st (
Hom (d1,c2))
<>
{} & (
Hom (d1,c4))
<>
{} & (f4
* g1)
= (f6
* g2) holds (
Hom (d1,c1))
<>
{} & ex h be
Morphism of d1, c1 st (f1
* h)
= g1 & (f3
* h)
= g2 & for h1 be
Morphism of d1, c1 st (f1
* h1)
= g1 & (f3
* h1)
= g2 holds h
= h1
proof
let d1 be
Object of C;
let g1 be
Morphism of d1, c2;
let g2 be
Morphism of d1, c4;
assume
A23: (
Hom (d1,c2))
<>
{} ;
assume
A24: (
Hom (d1,c4))
<>
{} ;
assume
A25: (f4
* g1)
= (f6
* g2);
set g11 = (f2
* g1);
A26: (
Hom (d1,c3))
<>
{} by
A1,
A23,
Th22;
A27: (f5
* g11)
= ((f5
* f2)
* g1) by
A23,
A1,
Th23
.= (f7
* (f6
* g2)) by
A25,
A23,
A3,
Th23,
A1
.= ((f7
* f6)
* g2) by
A24,
A1,
Th23;
then
A28: (
Hom (d1,c1))
<>
{} & ex h be
Morphism of d1, c1 st ((f2
* f1)
* h)
= g11 & (f3
* h)
= g2 & for h1 be
Morphism of d1, c1 st ((f2
* f1)
* h1)
= g11 & (f3
* h1)
= g2 holds h
= h1 by
A1,
A24,
A26,
A21,
A20,
Def17;
thus
A29: (
Hom (d1,c1))
<>
{} by
A1,
A27,
A24,
A26,
A21,
A20,
Def17;
consider h be
Morphism of d1, c1 such that
A30: ((f2
* f1)
* h)
= g11 & (f3
* h)
= g2 & for h1 be
Morphism of d1, c1 st ((f2
* f1)
* h1)
= g11 & (f3
* h1)
= g2 holds h
= h1 by
A1,
A27,
A24,
A26,
A21,
A20,
Def17;
take h;
set g22 = (f4
* g1);
A31: (
Hom (d1,c3))
<>
{} & (
Hom (d1,c5))
<>
{} by
A1,
A23,
Th22;
A32: (f5
* g11)
= ((f5
* f2)
* g1) by
A23,
A1,
Th23
.= (f7
* g22) by
A23,
A3,
Th23,
A1;
consider h2 be
Morphism of d1, c2 such that
A33: (f2
* h2)
= g11 & (f4
* h2)
= g22 & for h1 be
Morphism of d1, c2 st (f2
* h1)
= g11 & (f4
* h1)
= g22 holds h2
= h1 by
A1,
A32,
A31,
A2,
Def17;
A34: h2
= g1 by
A33;
A35: (f2
* (f1
* h))
= (f2
* g1) by
A1,
A30,
A28,
Th23;
(f4
* (f1
* h))
= ((f4
* f1)
* h) by
A1,
A28,
Th23
.= (f4
* g1) by
A30,
A25,
A22,
A28,
A1,
Th23;
hence (f1
* h)
= g1 by
A33,
A35,
A34;
thus (f3
* h)
= g2 by
A30;
let h1 be
Morphism of d1, c1;
assume
A36: (f1
* h1)
= g1;
A37: ((f2
* f1)
* h1)
= g11 by
A1,
A36,
A29,
Th23;
assume (f3
* h1)
= g2;
hence h
= h1 by
A30,
A37;
end;
hence (c1,f1,f3)
is_pullback_of (f4,f6) by
A22,
A1,
Def17;
end;
begin
definition
let C,D be
category;
let F be
Functor of C, D;
::
CAT_7:def18
attr F is
monomorphism means F is
covariant & for B be
category, G1,G2 be
Functor of B, C st G1 is
covariant & G2 is
covariant & (F
(*) G1)
= (F
(*) G2) holds G1
= G2;
::
CAT_7:def19
attr F is
isomorphism means F is
covariant & ex G be
Functor of D, C st G is
covariant & (G
(*) F)
= (
id C) & (F
(*) G)
= (
id D);
end
definition
let C,C1,C2,D be
category;
let F1 be
Functor of C1, C;
let F2 be
Functor of C2, C;
let P1 be
Functor of D, C1;
let P2 be
Functor of D, C2;
::
CAT_7:def20
pred D,P1,P2
is_pullback_of F1,F2 means
:
Def20: (F1
(*) P1)
= (F2
(*) P2) & for D1 be
category, G1 be
Functor of D1, C1, G2 be
Functor of D1, C2 st G1 is
covariant & G2 is
covariant & (F1
(*) G1)
= (F2
(*) G2) holds ex H be
Functor of D1, D st H is
covariant & (P1
(*) H)
= G1 & (P2
(*) H)
= G2 & for H1 be
Functor of D1, D st H1 is
covariant & (P1
(*) H1)
= G1 & (P2
(*) H1)
= G2 holds H
= H1;
end
theorem ::
CAT_7:46
Th46: for C,C1,C2,D,E be
category, F1 be
Functor of C1, C, F2 be
Functor of C2, C, P1 be
Functor of D, C1, P2 be
Functor of D, C2, Q1 be
Functor of E, C1, Q2 be
Functor of E, C2 st F1 is
covariant & F2 is
covariant & P1 is
covariant & P2 is
covariant & Q1 is
covariant & Q2 is
covariant & (D,P1,P2)
is_pullback_of (F1,F2) & (E,Q1,Q2)
is_pullback_of (F1,F2) holds D
~= E
proof
let C,C1,C2,D,E be
category;
let F1 be
Functor of C1, C;
let F2 be
Functor of C2, C;
let P1 be
Functor of D, C1;
let P2 be
Functor of D, C2;
let Q1 be
Functor of E, C1;
let Q2 be
Functor of E, C2;
assume
A1: F1 is
covariant & F2 is
covariant;
assume
A2: P1 is
covariant & P2 is
covariant & Q1 is
covariant & Q2 is
covariant;
assume
A3: (D,P1,P2)
is_pullback_of (F1,F2);
assume
A4: (E,Q1,Q2)
is_pullback_of (F1,F2);
ex FF be
Functor of D, E, GG be
Functor of E, D st FF is
covariant & GG is
covariant & (GG
(*) FF)
= (
id D) & (FF
(*) GG)
= (
id E)
proof
A5: (F1
(*) P1)
= (F2
(*) P2) & for D0 be
category, G1 be
Functor of D0, C1, G2 be
Functor of D0, C2 st G1 is
covariant & G2 is
covariant & (F1
(*) G1)
= (F2
(*) G2) holds ex H be
Functor of D0, D st H is
covariant & (P1
(*) H)
= G1 & (P2
(*) H)
= G2 & for H1 be
Functor of D0, D st H1 is
covariant & (P1
(*) H1)
= G1 & (P2
(*) H1)
= G2 holds H
= H1 by
A2,
A1,
A3,
Def20;
A6: (F1
(*) Q1)
= (F2
(*) Q2) & for D0 be
category, G1 be
Functor of D0, C1, G2 be
Functor of D0, C2 st G1 is
covariant & G2 is
covariant & (F1
(*) G1)
= (F2
(*) G2) holds ex H be
Functor of D0, E st H is
covariant & (Q1
(*) H)
= G1 & (Q2
(*) H)
= G2 & for H1 be
Functor of D0, E st H1 is
covariant & (Q1
(*) H1)
= G1 & (Q2
(*) H1)
= G2 holds H
= H1 by
A2,
A1,
A4,
Def20;
consider FF be
Functor of D, E such that
A7: FF is
covariant & (Q1
(*) FF)
= P1 & (Q2
(*) FF)
= P2 & for H1 be
Functor of D, E st H1 is
covariant & (Q1
(*) H1)
= P1 & (Q2
(*) H1)
= P2 holds FF
= H1 by
A2,
A5,
A1,
A4,
Def20;
consider GG be
Functor of E, D such that
A8: GG is
covariant & (P1
(*) GG)
= Q1 & (P2
(*) GG)
= Q2 & for H1 be
Functor of E, D st H1 is
covariant & (P1
(*) H1)
= Q1 & (P2
(*) H1)
= Q2 holds GG
= H1 by
A2,
A6,
A1,
A3,
Def20;
take FF, GG;
thus FF is
covariant & GG is
covariant by
A7,
A8;
set G11 = (Q1
(*) FF);
set G12 = (Q2
(*) FF);
consider H1 be
Functor of D, D such that
A9: H1 is
covariant & (P1
(*) H1)
= G11 & (P2
(*) H1)
= G12 & for H be
Functor of D, D st H is
covariant & (P1
(*) H)
= G11 & (P2
(*) H)
= G12 holds H1
= H by
A2,
A5,
A7;
A10: (P1
(*) (GG
(*) FF))
= G11 by
A2,
A7,
A8,
Th10;
A11: (P2
(*) (GG
(*) FF))
= G12 by
A2,
A7,
A8,
Th10;
A12: (P1
(*) (
id D))
= G11 by
A2,
A7,
Th11;
A13: (P2
(*) (
id D))
= G12 by
A2,
A7,
Th11;
thus (GG
(*) FF)
= H1 by
A9,
A10,
A11,
A7,
A8,
CAT_6: 35
.= (
id D) by
A9,
A12,
A13;
set G21 = (P1
(*) GG);
set G22 = (P2
(*) GG);
consider H2 be
Functor of E, E such that
A14: H2 is
covariant & (Q1
(*) H2)
= G21 & (Q2
(*) H2)
= G22 & for H be
Functor of E, E st H is
covariant & (Q1
(*) H)
= G21 & (Q2
(*) H)
= G22 holds H2
= H by
A2,
A6,
A8;
A15: (Q1
(*) (FF
(*) GG))
= G21 by
A2,
A7,
A8,
Th10;
A16: (Q2
(*) (FF
(*) GG))
= G22 by
A2,
A7,
A8,
Th10;
A17: (Q1
(*) (
id E))
= G21 by
A2,
A8,
Th11;
A18: (Q2
(*) (
id E))
= G22 by
A2,
A8,
Th11;
thus (FF
(*) GG)
= H2 by
A14,
A15,
A16,
A7,
A8,
CAT_6: 35
.= (
id E) by
A14,
A17,
A18;
end;
hence D
~= E by
CAT_6:def 28;
end;
theorem ::
CAT_7:47
Th47: for C,C1,C2,D be
category, F1 be
Functor of C1, C, F2 be
Functor of C2, C, P1 be
Functor of D, C1, P2 be
Functor of D, C2 st F1 is
covariant & F2 is
covariant & P1 is
covariant & P2 is
covariant & (D,P1,P2)
is_pullback_of (F1,F2) holds (D,P2,P1)
is_pullback_of (F2,F1)
proof
let C,C1,C2,D be
category;
let F1 be
Functor of C1, C;
let F2 be
Functor of C2, C;
let P1 be
Functor of D, C1;
let P2 be
Functor of D, C2;
assume
A1: F1 is
covariant & F2 is
covariant & P1 is
covariant & P2 is
covariant;
assume
A2: (D,P1,P2)
is_pullback_of (F1,F2);
then
A3: (F1
(*) P1)
= (F2
(*) P2) & for D1 be
category, G1 be
Functor of D1, C1, G2 be
Functor of D1, C2 st G1 is
covariant & G2 is
covariant & (F1
(*) G1)
= (F2
(*) G2) holds ex H be
Functor of D1, D st H is
covariant & (P1
(*) H)
= G1 & (P2
(*) H)
= G2 & for H1 be
Functor of D1, D st H1 is
covariant & (P1
(*) H1)
= G1 & (P2
(*) H1)
= G2 holds H
= H1 by
A1,
Def20;
for D1 be
category, G1 be
Functor of D1, C2, G2 be
Functor of D1, C1 st G1 is
covariant & G2 is
covariant & (F2
(*) G1)
= (F1
(*) G2) holds ex H be
Functor of D1, D st H is
covariant & (P2
(*) H)
= G1 & (P1
(*) H)
= G2 & for H1 be
Functor of D1, D st H1 is
covariant & (P2
(*) H1)
= G1 & (P1
(*) H1)
= G2 holds H
= H1
proof
let D1 be
category;
let G1 be
Functor of D1, C2;
let G2 be
Functor of D1, C1;
assume
A4: G1 is
covariant & G2 is
covariant & (F2
(*) G1)
= (F1
(*) G2);
consider H be
Functor of D1, D such that
A5: H is
covariant & (P1
(*) H)
= G2 & (P2
(*) H)
= G1 & for H1 be
Functor of D1, D st H1 is
covariant & (P1
(*) H1)
= G2 & (P2
(*) H1)
= G1 holds H
= H1 by
A4,
A2,
A1,
Def20;
take H;
thus H is
covariant & (P2
(*) H)
= G1 & (P1
(*) H)
= G2 by
A5;
let H1 be
Functor of D1, D;
assume H1 is
covariant & (P2
(*) H1)
= G1 & (P1
(*) H1)
= G2;
hence H
= H1 by
A5;
end;
hence (D,P2,P1)
is_pullback_of (F2,F1) by
A3,
A1,
Def20;
end;
theorem ::
CAT_7:48
for C,C1,C2,D be
category, F1 be
Functor of C1, C, F2 be
Functor of C2, C, P1 be
Functor of D, C1, P2 be
Functor of D, C2 st F1 is
covariant & F2 is
covariant & P1 is
covariant & P2 is
covariant & (D,P1,P2)
is_pullback_of (F1,F2) & F1 is
monomorphism holds P2 is
monomorphism
proof
let C,C1,C2,D be
category;
let F1 be
Functor of C1, C;
let F2 be
Functor of C2, C;
let P1 be
Functor of D, C1;
let P2 be
Functor of D, C2;
assume
A1: F1 is
covariant & F2 is
covariant & P1 is
covariant & P2 is
covariant;
assume
A2: (D,P1,P2)
is_pullback_of (F1,F2);
then
A3: (F1
(*) P1)
= (F2
(*) P2) & for D1 be
category, G1 be
Functor of D1, C1, G2 be
Functor of D1, C2 st G1 is
covariant & G2 is
covariant & (F1
(*) G1)
= (F2
(*) G2) holds ex H be
Functor of D1, D st H is
covariant & (P1
(*) H)
= G1 & (P2
(*) H)
= G2 & for H1 be
Functor of D1, D st H1 is
covariant & (P1
(*) H1)
= G1 & (P2
(*) H1)
= G2 holds H
= H1 by
A1,
Def20;
assume
A4: F1 is
monomorphism;
for D1 be
category holds for Q1,Q2 be
Functor of D1, D st Q1 is
covariant & Q2 is
covariant & (P2
(*) Q1)
= (P2
(*) Q2) holds Q1
= Q2
proof
let D1 be
category;
let Q1,Q2 be
Functor of D1, D;
assume
A5: Q1 is
covariant & Q2 is
covariant;
assume
A6: (P2
(*) Q1)
= (P2
(*) Q2);
set P11 = (P1
(*) Q1);
set P12 = (P2
(*) Q1);
A7: P11 is
covariant & P12 is
covariant by
A1,
A5,
CAT_6: 35;
(F1
(*) P11)
= ((F1
(*) P1)
(*) Q1) by
A5,
A1,
Th10
.= (F2
(*) P12) by
A5,
A3,
A1,
Th10;
then
consider H be
Functor of D1, D such that
A8: H is
covariant & (P1
(*) H)
= P11 & (P2
(*) H)
= P12 & for H1 be
Functor of D1, D st H1 is
covariant & (P1
(*) H1)
= P11 & (P2
(*) H1)
= P12 holds H
= H1 by
A1,
A2,
Def20,
A7;
A9: Q1
= H by
A5,
A8;
A10: (P1
(*) Q2) is
covariant by
A5,
A1,
CAT_6: 35;
(F1
(*) (P1
(*) Q2))
= ((F1
(*) P1)
(*) Q2) by
A5,
A1,
Th10
.= (F2
(*) (P2
(*) Q2)) by
A5,
A3,
A1,
Th10
.= ((F2
(*) P2)
(*) Q1) by
A6,
A5,
A1,
Th10
.= (F1
(*) P11) by
A5,
A3,
A1,
Th10;
hence Q1
= Q2 by
A5,
A9,
A8,
A6,
A7,
A10,
A4;
end;
hence thesis by
A1;
end;
theorem ::
CAT_7:49
for C,C1,C2,D be
category, F1 be
Functor of C1, C, F2 be
Functor of C2, C, P1 be
Functor of D, C1, P2 be
Functor of D, C2 st F1 is
covariant & F2 is
covariant & P1 is
covariant & P2 is
covariant & (D,P1,P2)
is_pullback_of (F1,F2) & F1 is
isomorphism holds P2 is
isomorphism
proof
let C,C1,C2,D be
category;
let F1 be
Functor of C1, C;
let F2 be
Functor of C2, C;
let P1 be
Functor of D, C1;
let P2 be
Functor of D, C2;
assume
A1: F1 is
covariant & F2 is
covariant & P1 is
covariant & P2 is
covariant;
assume
A2: (D,P1,P2)
is_pullback_of (F1,F2);
then
A3: (F1
(*) P1)
= (F2
(*) P2) & for D1 be
category, G1 be
Functor of D1, C1, G2 be
Functor of D1, C2 st G1 is
covariant & G2 is
covariant & (F1
(*) G1)
= (F2
(*) G2) holds ex H be
Functor of D1, D st H is
covariant & (P1
(*) H)
= G1 & (P2
(*) H)
= G2 & for H1 be
Functor of D1, D st H1 is
covariant & (P1
(*) H1)
= G1 & (P2
(*) H1)
= G2 holds H
= H1 by
A1,
Def20;
assume
A4: F1 is
isomorphism;
consider G1 be
Functor of C, C1 such that
A5: G1 is
covariant & (G1
(*) F1)
= (
id C1) & (F1
(*) G1)
= (
id C) by
A4;
set G11 = (G1
(*) F2);
set G22 = (
id C2);
A6: G11 is
covariant by
A5,
A1,
CAT_6: 35;
A7: (F1
(*) G11)
= ((F1
(*) G1)
(*) F2) by
A5,
A1,
Th10
.= F2 by
A5,
A1,
Th11
.= (F2
(*) G22) by
A1,
Th11;
consider Q2 be
Functor of C2, D such that
A8: Q2 is
covariant & (P1
(*) Q2)
= G11 & (P2
(*) Q2)
= G22 & for H1 be
Functor of C2, D st H1 is
covariant & (P1
(*) H1)
= G11 & (P2
(*) H1)
= G22 holds Q2
= H1 by
A6,
A2,
A1,
Def20,
A7;
set G33 = ((P1
(*) Q2)
(*) P2);
A9: (F2
(*) P2) is
covariant by
A1,
CAT_6: 35;
A10: G33 is
covariant by
A8,
A6,
A1,
CAT_6: 35;
(F1
(*) G33)
= (F1
(*) (G1
(*) (F2
(*) P2))) by
A5,
A8,
A1,
Th10
.= ((F1
(*) G1)
(*) (F2
(*) P2)) by
A9,
A5,
A4,
Th10
.= (F2
(*) P2) by
A9,
Th11,
A5;
then
consider H be
Functor of D, D such that H is
covariant & (P1
(*) H)
= G33 & (P2
(*) H)
= P2 and
A11: for H1 be
Functor of D, D st H1 is
covariant & (P1
(*) H1)
= G33 & (P2
(*) H1)
= P2 holds H
= H1 by
A1,
A2,
A10,
Def20;
A12: (P1
(*) (
id D))
= P1 by
A1,
Th11
.= ((G1
(*) F1)
(*) P1) by
A1,
A5,
Th11
.= (G1
(*) (F1
(*) P1)) by
A1,
A5,
Th10
.= G33 by
A8,
A3,
A1,
A5,
Th10;
A13: (P2
(*) (
id D))
= P2 by
A1,
Th11;
A14: (P1
(*) (Q2
(*) P2))
= G33 by
A1,
A8,
Th10;
(P2
(*) (Q2
(*) P2))
= ((P2
(*) Q2)
(*) P2) by
A1,
A8,
Th10
.= P2 by
A1,
A8,
Th11;
then H
= (Q2
(*) P2) by
A11,
A14,
A1,
A8,
CAT_6: 35;
hence P2 is
isomorphism by
A8,
A13,
A11,
A12,
A1;
end;
theorem ::
CAT_7:50
for C1,C2,C3,C4,C5,C6 be
category, F1 be
Functor of C1, C2, F2 be
Functor of C2, C3, F3 be
Functor of C1, C4, F4 be
Functor of C2, C5, F5 be
Functor of C3, C6, F6 be
Functor of C4, C5, F7 be
Functor of C5, C6 st F1 is
covariant & F2 is
covariant & F3 is
covariant & F4 is
covariant & F5 is
covariant & F6 is
covariant & F7 is
covariant & (C2,F2,F4)
is_pullback_of (F5,F7) holds (C1,F1,F3)
is_pullback_of (F4,F6) iff (C1,(F2
(*) F1),F3)
is_pullback_of (F5,(F7
(*) F6)) & (F4
(*) F1)
= (F6
(*) F3)
proof
let C1,C2,C3,C4,C5,C6 be
category;
let F1 be
Functor of C1, C2;
let F2 be
Functor of C2, C3;
let F3 be
Functor of C1, C4;
let F4 be
Functor of C2, C5;
let F5 be
Functor of C3, C6;
let F6 be
Functor of C4, C5;
let F7 be
Functor of C5, C6;
assume
A1: F1 is
covariant & F2 is
covariant & F3 is
covariant & F4 is
covariant & F5 is
covariant & F6 is
covariant & F7 is
covariant;
assume
A2: (C2,F2,F4)
is_pullback_of (F5,F7);
then
A3: (F5
(*) F2)
= (F7
(*) F4) & for D1 be
category, G1 be
Functor of D1, C3, G2 be
Functor of D1, C5 st G1 is
covariant & G2 is
covariant & (F5
(*) G1)
= (F7
(*) G2) holds ex H be
Functor of D1, C2 st H is
covariant & (F2
(*) H)
= G1 & (F4
(*) H)
= G2 & for H1 be
Functor of D1, C2 st H1 is
covariant & (F2
(*) H1)
= G1 & (F4
(*) H1)
= G2 holds H
= H1 by
A1,
Def20;
hereby
assume
A4: (C1,F1,F3)
is_pullback_of (F4,F6);
then
A5: (F4
(*) F1)
= (F6
(*) F3) & for D1 be
category, G1 be
Functor of D1, C2, G2 be
Functor of D1, C4 st G1 is
covariant & G2 is
covariant & (F4
(*) G1)
= (F6
(*) G2) holds ex H be
Functor of D1, C1 st H is
covariant & (F1
(*) H)
= G1 & (F3
(*) H)
= G2 & for H1 be
Functor of D1, C1 st H1 is
covariant & (F1
(*) H1)
= G1 & (F3
(*) H1)
= G2 holds H
= H1 by
A1,
Def20;
A6: (F7
(*) F6) is
covariant & (F2
(*) F1) is
covariant & F3 is
covariant by
A1,
CAT_6: 35;
A7: (F5
(*) (F2
(*) F1))
= ((F5
(*) F2)
(*) F1) by
A1,
Th10
.= (F7
(*) (F6
(*) F3)) by
A3,
A5,
Th10,
A1
.= ((F7
(*) F6)
(*) F3) by
A1,
Th10;
for D1 be
category, G1 be
Functor of D1, C3, G2 be
Functor of D1, C4 st G1 is
covariant & G2 is
covariant & (F5
(*) G1)
= ((F7
(*) F6)
(*) G2) holds ex H be
Functor of D1, C1 st H is
covariant & ((F2
(*) F1)
(*) H)
= G1 & (F3
(*) H)
= G2 & for H1 be
Functor of D1, C1 st H1 is
covariant & ((F2
(*) F1)
(*) H1)
= G1 & (F3
(*) H1)
= G2 holds H
= H1
proof
let D1 be
category;
let G1 be
Functor of D1, C3;
let G2 be
Functor of D1, C4;
assume
A8: G1 is
covariant;
assume
A9: G2 is
covariant;
assume
A10: (F5
(*) G1)
= ((F7
(*) F6)
(*) G2);
A11: (F6
(*) G2) is
covariant by
A1,
A9,
CAT_6: 35;
A12: (F5
(*) G1)
= (F7
(*) (F6
(*) G2)) by
A10,
A9,
A1,
Th10;
consider G3 be
Functor of D1, C2 such that
A13: G3 is
covariant & (F2
(*) G3)
= G1 & (F4
(*) G3)
= (F6
(*) G2) & for H1 be
Functor of D1, C2 st H1 is
covariant & (F2
(*) H1)
= G1 & (F4
(*) H1)
= (F6
(*) G2) holds G3
= H1 by
A11,
A12,
A2,
A8,
A1,
Def20;
consider H be
Functor of D1, C1 such that
A14: H is
covariant & (F1
(*) H)
= G3 & (F3
(*) H)
= G2 & for H1 be
Functor of D1, C1 st H1 is
covariant & (F1
(*) H1)
= G3 & (F3
(*) H1)
= G2 holds H
= H1 by
A13,
A9,
A4,
A1,
Def20;
take H;
thus H is
covariant by
A14;
thus ((F2
(*) F1)
(*) H)
= G1 by
A1,
A13,
A14,
Th10;
thus (F3
(*) H)
= G2 by
A14;
let H1 be
Functor of D1, C1;
assume
A15: H1 is
covariant;
assume
A16: ((F2
(*) F1)
(*) H1)
= G1;
assume
A17: (F3
(*) H1)
= G2;
A18: (F2
(*) (F1
(*) H1))
= G1 by
A1,
A15,
A16,
Th10;
(F4
(*) (F1
(*) H1))
= ((F4
(*) F1)
(*) H1) by
A1,
A15,
Th10
.= (F6
(*) G2) by
A15,
A17,
A5,
Th10,
A1;
then G3
= (F1
(*) H1) by
A18,
A13,
A1,
A15,
CAT_6: 35;
hence H
= H1 by
A15,
A17,
A14;
end;
hence (C1,(F2
(*) F1),F3)
is_pullback_of (F5,(F7
(*) F6)) by
A6,
A1,
A7,
Def20;
thus (F4
(*) F1)
= (F6
(*) F3) by
A4,
A1,
Def20;
end;
A19: (F7
(*) F6) is
covariant & (F2
(*) F1) is
covariant by
A1,
CAT_6: 35;
assume
A20: (C1,(F2
(*) F1),F3)
is_pullback_of (F5,(F7
(*) F6));
assume
A21: (F4
(*) F1)
= (F6
(*) F3);
for D1 be
category, G1 be
Functor of D1, C2, G2 be
Functor of D1, C4 st G1 is
covariant & G2 is
covariant & (F4
(*) G1)
= (F6
(*) G2) holds ex H be
Functor of D1, C1 st H is
covariant & (F1
(*) H)
= G1 & (F3
(*) H)
= G2 & for H1 be
Functor of D1, C1 st H1 is
covariant & (F1
(*) H1)
= G1 & (F3
(*) H1)
= G2 holds H
= H1
proof
let D1 be
category;
let G1 be
Functor of D1, C2;
let G2 be
Functor of D1, C4;
assume
A22: G1 is
covariant;
assume
A23: G2 is
covariant;
assume
A24: (F4
(*) G1)
= (F6
(*) G2);
set G11 = (F2
(*) G1);
A25: G11 is
covariant by
A1,
A22,
CAT_6: 35;
A26: (F5
(*) G11)
= ((F5
(*) F2)
(*) G1) by
A22,
A1,
Th10
.= (F7
(*) (F6
(*) G2)) by
A24,
A22,
A3,
Th10,
A1
.= ((F7
(*) F6)
(*) G2) by
A23,
A1,
Th10;
consider H be
Functor of D1, C1 such that
A27: H is
covariant & ((F2
(*) F1)
(*) H)
= G11 & (F3
(*) H)
= G2 & for H1 be
Functor of D1, C1 st H1 is
covariant & ((F2
(*) F1)
(*) H1)
= G11 & (F3
(*) H1)
= G2 holds H
= H1 by
A1,
A26,
A23,
A25,
A20,
A19,
Def20;
take H;
thus H is
covariant by
A27;
set G22 = (F4
(*) G1);
A28: G11 is
covariant & G22 is
covariant by
A1,
A22,
CAT_6: 35;
A29: (F5
(*) G11)
= ((F5
(*) F2)
(*) G1) by
A22,
A1,
Th10
.= (F7
(*) G22) by
A22,
A3,
Th10,
A1;
consider H2 be
Functor of D1, C2 such that
A30: H2 is
covariant & (F2
(*) H2)
= G11 & (F4
(*) H2)
= G22 & for H1 be
Functor of D1, C2 st H1 is
covariant & (F2
(*) H1)
= G11 & (F4
(*) H1)
= G22 holds H2
= H1 by
A29,
A28,
A2,
A1,
Def20;
A31: H2
= G1 by
A22,
A30;
A32: (F2
(*) (F1
(*) H))
= (F2
(*) G1) by
A1,
A27,
Th10;
(F4
(*) (F1
(*) H))
= ((F4
(*) F1)
(*) H) by
A1,
A27,
Th10
.= (F4
(*) G1) by
A27,
A24,
A21,
A1,
Th10;
hence (F1
(*) H)
= G1 by
A30,
A32,
A31,
A1,
A27,
CAT_6: 35;
thus (F3
(*) H)
= G2 by
A27;
let H1 be
Functor of D1, C1;
assume
A33: H1 is
covariant;
assume
A34: (F1
(*) H1)
= G1;
A35: ((F2
(*) F1)
(*) H1)
= G11 by
A1,
A33,
A34,
Th10;
assume (F3
(*) H1)
= G2;
hence H
= H1 by
A33,
A27,
A35;
end;
hence (C1,F1,F3)
is_pullback_of (F4,F6) by
A21,
A1,
Def20;
end;
theorem ::
CAT_7:51
Th51: for C,C1,C2 be
category, F1 be
Functor of C1, C, F2 be
Functor of C2, C st F1 is
covariant & F2 is
covariant holds ex D be
strict
category, P1 be
Functor of D, C1, P2 be
Functor of D, C2 st the
carrier of D
= {
[f1, f2] where f1 be
morphism of C1, f2 be
morphism of C2 : f1
in the
carrier of C1 & f2
in the
carrier of C2 & (F1
. f1)
= (F2
. f2) } & the
composition of D
= {
[
[f1, f2], f3] where f1,f2,f3 be
morphism of D : f1
in the
carrier of D & f2
in the
carrier of D & f3
in the
carrier of D & for f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 st f1
=
[f11, f21] & f2
=
[f12, f22] & f3
=
[f13, f23] holds f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22) } & P1 is
covariant & P2 is
covariant & (D,P1,P2)
is_pullback_of (F1,F2)
proof
let C,C1,C2 be
category;
let F1 be
Functor of C1, C;
let F2 be
Functor of C2, C;
assume
A1: F1 is
covariant & F2 is
covariant;
reconsider car = {
[f1, f2] where f1 be
morphism of C1, f2 be
morphism of C2 : f1
in the
carrier of C1 & f2
in the
carrier of C2 & (F1
. f1)
= (F2
. f2) } as
set;
set comp = {
[
[x1, x2], x3] where x1,x2,x3 be
Element of car : x1
in car & x2
in car & x3
in car & for f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 st x1
=
[f11, f21] & x2
=
[f12, f22] & x3
=
[f13, f23] holds f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22) };
for x be
object st x
in comp holds x
in
[:
[:car, car:], car:]
proof
let x be
object;
assume x
in comp;
then
consider x1,x2,x3 be
Element of car such that
A2: x
=
[
[x1, x2], x3] & x1
in car & x2
in car & x3
in car & for f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 st x1
=
[f11, f21] & x2
=
[f12, f22] & x3
=
[f13, f23] holds f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22);
[x1, x2]
in
[:car, car:] by
A2,
ZFMISC_1:def 2;
hence thesis by
A2,
ZFMISC_1:def 2;
end;
then
reconsider comp as
Relation of
[:car, car:], car by
TARSKI:def 3;
for x,y1,y2 be
object st
[x, y1]
in comp &
[x, y2]
in comp holds y1
= y2
proof
let x,y1,y2 be
object;
assume
[x, y1]
in comp;
then
consider x11,x12,x13 be
Element of car such that
A3:
[x, y1]
=
[
[x11, x12], x13] & x11
in car & x12
in car & x13
in car & for f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 st x11
=
[f11, f21] & x12
=
[f12, f22] & x13
=
[f13, f23] holds f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22);
assume
[x, y2]
in comp;
then
consider x21,x22,x23 be
Element of car such that
A4:
[x, y2]
=
[
[x21, x22], x23] & x21
in car & x22
in car & x23
in car & for f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 st x21
=
[f11, f21] & x22
=
[f12, f22] & x23
=
[f13, f23] holds f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22);
A5: x
=
[x11, x12] & y1
= x13 by
A3,
XTUPLE_0: 1;
A6: x
=
[x21, x22] & y2
= x23 by
A4,
XTUPLE_0: 1;
A7: x11
= x21 & x12
= x22 by
A5,
A6,
XTUPLE_0: 1;
consider f11 be
morphism of C1, f21 be
morphism of C2 such that
A8: x11
=
[f11, f21] & f11
in the
carrier of C1 & f21
in the
carrier of C2 & (F1
. f11)
= (F2
. f21) by
A3;
consider f12 be
morphism of C1, f22 be
morphism of C2 such that
A9: x12
=
[f12, f22] & f12
in the
carrier of C1 & f22
in the
carrier of C2 & (F1
. f12)
= (F2
. f22) by
A3;
consider f13 be
morphism of C1, f23 be
morphism of C2 such that
A10: x13
=
[f13, f23] & f13
in the
carrier of C1 & f23
in the
carrier of C2 & (F1
. f13)
= (F2
. f23) by
A3;
consider f213 be
morphism of C1, f223 be
morphism of C2 such that
A11: x23
=
[f213, f223] & f213
in the
carrier of C1 & f223
in the
carrier of C2 & (F1
. f213)
= (F2
. f223) by
A4;
A12: f13
= (f11
(*) f12) & f23
= (f21
(*) f22) by
A3,
A8,
A9,
A10;
f213
= (f11
(*) f12) & f223
= (f21
(*) f22) by
A8,
A9,
A11,
A4,
A7;
hence thesis by
A6,
A12,
A10,
A11,
A3,
XTUPLE_0: 1;
end;
then
reconsider comp as
PartFunc of
[:car, car:], car by
FUNCT_1:def 1;
set D =
CategoryStr (# car, comp #);
A13: for g1,g2 be
morphism of D st g1
|> g2 holds ex f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 st g1
=
[f11, f21] & g2
=
[f12, f22] & (F1
. f11)
= (F2
. f21) & (F1
. f12)
= (F2
. f22) & f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22) & (g1
(*) g2)
=
[f13, f23]
proof
let g1,g2 be
morphism of D;
assume
A14: g1
|> g2;
g1
in the
carrier of D by
A14,
Th1,
CAT_6: 1;
then
consider f11 be
morphism of C1, f21 be
morphism of C2 such that
A15: g1
=
[f11, f21] & f11
in the
carrier of C1 & f21
in the
carrier of C2 & (F1
. f11)
= (F2
. f21);
g2
in the
carrier of D by
A14,
Th1,
CAT_6: 1;
then
consider f12 be
morphism of C1, f22 be
morphism of C2 such that
A16: g2
=
[f12, f22] & f12
in the
carrier of C1 & f22
in the
carrier of C2 & (F1
. f12)
= (F2
. f22);
[g1, g2]
in (
dom the
composition of D) by
A14,
CAT_6:def 2;
then
consider y be
object such that
A17:
[
[g1, g2], y]
in comp by
XTUPLE_0:def 12;
consider x1,x2,x3 be
Element of car such that
A18:
[
[g1, g2], y]
=
[
[x1, x2], x3] & x1
in car & x2
in car & x3
in car & for f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 st x1
=
[f11, f21] & x2
=
[f12, f22] & x3
=
[f13, f23] holds f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22) by
A17;
consider f13 be
morphism of C1, f23 be
morphism of C2 such that
A19: x3
=
[f13, f23] & f13
in the
carrier of C1 & f23
in the
carrier of C2 & (F1
. f13)
= (F2
. f23) by
A18;
[x1, x2]
=
[g1, g2] & y
= x3 by
A18,
XTUPLE_0: 1;
then
A20: x1
= g1 & x2
= g2 by
XTUPLE_0: 1;
take f11, f12, f13, f21, f22, f23;
thus g1
=
[f11, f21] & g2
=
[f12, f22] & (F1
. f11)
= (F2
. f21) & (F1
. f12)
= (F2
. f22) by
A15,
A16;
thus f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22) by
A20,
A18,
A19,
A15,
A16;
thus (g1
(*) g2)
= (the
composition of D
. (g1,g2)) by
A14,
CAT_6:def 3
.= (the
composition of D
.
[g1, g2]) by
BINOP_1:def 1
.= y by
A17,
FUNCT_1: 1
.=
[f13, f23] by
A19,
A18,
XTUPLE_0: 1;
end;
A21: F1 is
multiplicative & F2 is
multiplicative by
A1,
CAT_6:def 25;
A22: for g1,g2 be
morphism of D st ex f11,f12 be
morphism of C1, f21,f22 be
morphism of C2 st g1
=
[f11, f21] & g2
=
[f12, f22] & (F1
. f11)
= (F2
. f21) & (F1
. f12)
= (F2
. f22) & f11
|> f12 & f21
|> f22 holds g1
|> g2
proof
let g1,g2 be
morphism of D;
given f11,f12 be
morphism of C1, f21,f22 be
morphism of C2 such that
A23: g1
=
[f11, f21] & g2
=
[f12, f22] & (F1
. f11)
= (F2
. f21) & (F1
. f12)
= (F2
. f22) & f11
|> f12 & f21
|> f22;
set x3 =
[(f11
(*) f12), (f21
(*) f22)];
A24: f11
in the
carrier of C1 & f12
in the
carrier of C1 & f21
in the
carrier of C2 & f22
in the
carrier of C2 by
A23,
Th1,
CAT_6: 1;
A25: (f11
(*) f12)
in the
carrier of C1 & (f21
(*) f22)
in the
carrier of C2 by
A23,
Th1,
CAT_6: 1;
(F1
. (f11
(*) f12))
= ((F1
. f11)
(*) (F1
. f12)) by
A21,
A23,
CAT_6:def 23
.= (F2
. (f21
(*) f22)) by
A21,
A23,
CAT_6:def 23;
then x3
in car by
A25;
then
reconsider g3 = x3 as
morphism of D by
CAT_6:def 1;
reconsider x1 = g1, x2 = g2, x3 = g3 as
Element of car by
CAT_6:def 1;
A26: x1
in car & x2
in car by
A23,
A24;
for f011,f012,f013 be
morphism of C1, f021,f022,f023 be
morphism of C2 st x1
=
[f011, f021] & x2
=
[f012, f022] & x3
=
[f013, f023] holds f011
|> f012 & f021
|> f022 & f013
= (f011
(*) f012) & f023
= (f021
(*) f022)
proof
let f011,f012,f013 be
morphism of C1;
let f021,f022,f023 be
morphism of C2;
assume x1
=
[f011, f021] & x2
=
[f012, f022] & x3
=
[f013, f023];
then f11
= f011 & f21
= f021 & f12
= f012 & f22
= f022 & (f11
(*) f12)
= f013 & (f21
(*) f22)
= f023 by
A23,
XTUPLE_0: 1;
hence thesis by
A23;
end;
then
[
[x1, x2], x3]
in the
composition of D by
A26;
then
[g1, g2]
in (
dom the
composition of D) by
XTUPLE_0:def 12;
hence g1
|> g2 by
CAT_6:def 2;
end;
for g,g1,g2 be
morphism of D st g1
|> g2 holds (g1
(*) g2)
|> g iff g2
|> g
proof
let g,g1,g2 be
morphism of D;
assume g1
|> g2;
then
consider f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 such that
A27: g1
=
[f11, f21] & g2
=
[f12, f22] & (F1
. f11)
= (F2
. f21) & (F1
. f12)
= (F2
. f22) & f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22) & (g1
(*) g2)
=
[f13, f23] by
A13;
hereby
assume (g1
(*) g2)
|> g;
then
consider f011,f012,f013 be
morphism of C1, f021,f022,f023 be
morphism of C2 such that
A28: (g1
(*) g2)
=
[f011, f021] & g
=
[f012, f022] & (F1
. f011)
= (F2
. f021) & (F1
. f012)
= (F2
. f022) & f011
|> f012 & f021
|> f022 & f013
= (f011
(*) f012) & f023
= (f021
(*) f022) & ((g1
(*) g2)
(*) g)
=
[f013, f023] by
A13;
A29: f13
= f011 & f23
= f021 by
A27,
A28,
XTUPLE_0: 1;
C1 is
left_composable & C2 is
left_composable by
CAT_6:def 11;
then f12
|> f012 & f22
|> f022 by
A27,
A28,
A29,
CAT_6:def 8;
hence g2
|> g by
A22,
A27,
A28;
end;
assume g2
|> g;
then
consider f011,f012,f013 be
morphism of C1, f021,f022,f023 be
morphism of C2 such that
A30: g2
=
[f011, f021] & g
=
[f012, f022] & (F1
. f011)
= (F2
. f021) & (F1
. f012)
= (F2
. f022) & f011
|> f012 & f021
|> f022 & f013
= (f011
(*) f012) & f023
= (f021
(*) f022) & (g2
(*) g)
=
[f013, f023] by
A13;
A31: f12
= f011 & f22
= f021 by
A27,
A30,
XTUPLE_0: 1;
C1 is
left_composable & C2 is
left_composable by
CAT_6:def 11;
then
A32: f13
|> f012 & f23
|> f022 by
A27,
A30,
A31,
CAT_6:def 8;
(F1
. f13)
= ((F1
. f11)
(*) (F1
. f12)) by
A21,
A27,
CAT_6:def 23
.= (F2
. f23) by
A21,
A27,
CAT_6:def 23;
hence (g1
(*) g2)
|> g by
A22,
A27,
A30,
A32;
end;
then
A33: D is
left_composable by
CAT_6:def 8;
A34: for g,g1,g2 be
morphism of D st g1
|> g2 holds g
|> (g1
(*) g2) iff g
|> g1
proof
let g,g1,g2 be
morphism of D;
assume g1
|> g2;
then
consider f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 such that
A35: g1
=
[f11, f21] & g2
=
[f12, f22] & (F1
. f11)
= (F2
. f21) & (F1
. f12)
= (F2
. f22) & f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22) & (g1
(*) g2)
=
[f13, f23] by
A13;
hereby
assume g
|> (g1
(*) g2);
then
consider f011,f012,f013 be
morphism of C1, f021,f022,f023 be
morphism of C2 such that
A36: g
=
[f011, f021] & (g1
(*) g2)
=
[f012, f022] & (F1
. f011)
= (F2
. f021) & (F1
. f012)
= (F2
. f022) & f011
|> f012 & f021
|> f022 & f013
= (f011
(*) f012) & f023
= (f021
(*) f022) & (g
(*) (g1
(*) g2))
=
[f013, f023] by
A13;
A37: f13
= f012 & f23
= f022 by
A35,
A36,
XTUPLE_0: 1;
C1 is
right_composable & C2 is
right_composable by
CAT_6:def 11;
then f011
|> f11 & f021
|> f21 by
A35,
A36,
A37,
CAT_6:def 9;
hence g
|> g1 by
A22,
A35,
A36;
end;
assume g
|> g1;
then
consider f011,f012,f013 be
morphism of C1, f021,f022,f023 be
morphism of C2 such that
A38: g
=
[f011, f021] & g1
=
[f012, f022] & (F1
. f011)
= (F2
. f021) & (F1
. f012)
= (F2
. f022) & f011
|> f012 & f021
|> f022 & f013
= (f011
(*) f012) & f023
= (f021
(*) f022) & (g
(*) g1)
=
[f013, f023] by
A13;
A39: f11
= f012 & f21
= f022 by
A35,
A38,
XTUPLE_0: 1;
C1 is
right_composable & C2 is
right_composable by
CAT_6:def 11;
then
A40: f011
|> f13 & f021
|> f23 by
A35,
A38,
A39,
CAT_6:def 9;
(F1
. f13)
= ((F1
. f11)
(*) (F1
. f12)) by
A21,
A35,
CAT_6:def 23
.= (F2
. f23) by
A21,
A35,
CAT_6:def 23;
hence g
|> (g1
(*) g2) by
A22,
A35,
A38,
A40;
end;
for g1 be
morphism of D st g1
in the
carrier of D holds ex g be
morphism of D st g
|> g1 & g is
left_identity
proof
let g1 be
morphism of D;
assume g1
in the
carrier of D;
then
consider f1 be
morphism of C1, f2 be
morphism of C2 such that
A41: g1
=
[f1, f2] & f1
in the
carrier of C1 & f2
in the
carrier of C2 & (F1
. f1)
= (F2
. f2);
A42: C1 is non
empty by
A41;
A43: (
cod f1)
in the
carrier of C1 by
A42,
Th2;
then
reconsider c1 = (
cod f1) as
morphism of C1 by
CAT_6:def 1;
A44: C2 is non
empty by
A41;
A45: (
cod f2)
in the
carrier of C2 by
A44,
Th2;
then
reconsider c2 = (
cod f2) as
morphism of C2 by
CAT_6:def 1;
A46: C is non
empty by
A1,
A42,
CAT_6: 31;
set g =
[c1, c2];
A47: (F1
. c1)
= (F1
. (
cod f1)) by
A42,
CAT_6:def 21
.= (
cod (F1
. f1)) by
A42,
A46,
A1,
CAT_6: 32
.= (F2
. (
cod f2)) by
A41,
A44,
A46,
A1,
CAT_6: 32
.= (F2
. c2) by
A44,
CAT_6:def 21;
then g
in car by
A43,
A45;
then
reconsider g =
[c1, c2] as
morphism of D by
CAT_6:def 1;
take g;
consider c11 be
morphism of C1 such that
A48: c1
= c11 & c11
|> f1 & c11 is
identity by
A42,
CAT_6:def 19;
consider c22 be
morphism of C2 such that
A49: c2
= c22 & c22
|> f2 & c22 is
identity by
A44,
CAT_6:def 19;
thus g
|> g1 by
A22,
A47,
A41,
A48,
A49;
for g1 be
morphism of D st g
|> g1 holds (g
(*) g1)
= g1
proof
let g1 be
morphism of D;
assume g
|> g1;
then
consider f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 such that
A50: g
=
[f11, f21] & g1
=
[f12, f22] & (F1
. f11)
= (F2
. f21) & (F1
. f12)
= (F2
. f22) & f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22) & (g
(*) g1)
=
[f13, f23] by
A13;
A51: c11
= f11 & c22
= f21 by
A48,
A49,
A50,
XTUPLE_0: 1;
f13
= f12 & f23
= f22 by
A51,
A50,
CAT_6:def 4,
A48,
A49,
CAT_6:def 14;
hence (g
(*) g1)
= g1 by
A50;
end;
hence g is
left_identity by
CAT_6:def 4;
end;
then
A52: D is
with_left_identities by
CAT_6:def 6;
A53: for g1 be
morphism of D st g1
in the
carrier of D holds ex g be
morphism of D st g1
|> g & g is
right_identity
proof
let g1 be
morphism of D;
assume g1
in the
carrier of D;
then
consider f1 be
morphism of C1, f2 be
morphism of C2 such that
A54: g1
=
[f1, f2] & f1
in the
carrier of C1 & f2
in the
carrier of C2 & (F1
. f1)
= (F2
. f2);
A55: C1 is non
empty by
A54;
A56: (
dom f1)
in the
carrier of C1 by
A55,
Th2;
then
reconsider d1 = (
dom f1) as
morphism of C1 by
CAT_6:def 1;
A57: C2 is non
empty by
A54;
A58: (
dom f2)
in the
carrier of C2 by
A57,
Th2;
then
reconsider d2 = (
dom f2) as
morphism of C2 by
CAT_6:def 1;
A59: C is non
empty by
A1,
A55,
CAT_6: 31;
set g =
[d1, d2];
A60: (F1
. d1)
= (F1
. (
dom f1)) by
A55,
CAT_6:def 21
.= (
dom (F1
. f1)) by
A55,
A59,
A1,
CAT_6: 32
.= (F2
. (
dom f2)) by
A54,
A57,
A59,
A1,
CAT_6: 32
.= (F2
. d2) by
A57,
CAT_6:def 21;
then g
in car by
A56,
A58;
then
reconsider g =
[d1, d2] as
morphism of D by
CAT_6:def 1;
take g;
consider d11 be
morphism of C1 such that
A61: d1
= d11 & f1
|> d11 & d11 is
identity by
A55,
CAT_6:def 18;
consider d22 be
morphism of C2 such that
A62: d2
= d22 & f2
|> d22 & d22 is
identity by
A57,
CAT_6:def 18;
thus g1
|> g by
A22,
A60,
A54,
A61,
A62;
for g1 be
morphism of D st g1
|> g holds (g1
(*) g)
= g1
proof
let g1 be
morphism of D;
assume g1
|> g;
then
consider f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 such that
A63: g1
=
[f11, f21] & g
=
[f12, f22] & (F1
. f11)
= (F2
. f21) & (F1
. f12)
= (F2
. f22) & f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22) & (g1
(*) g)
=
[f13, f23] by
A13;
A64: d11
= f12 & d22
= f22 by
A61,
A62,
A63,
XTUPLE_0: 1;
f13
= f11 & f23
= f21 by
A64,
A63,
CAT_6:def 5,
A61,
A62,
CAT_6:def 14;
hence (g1
(*) g)
= g1 by
A63;
end;
hence g is
right_identity by
CAT_6:def 5;
end;
for g1,g2,g3 be
morphism of D st g1
|> g2 & g2
|> g3 & (g1
(*) g2)
|> g3 & g1
|> (g2
(*) g3) holds (g1
(*) (g2
(*) g3))
= ((g1
(*) g2)
(*) g3)
proof
let g1,g2,g3 be
morphism of D;
assume g1
|> g2;
then
consider f011,f012,f013 be
morphism of C1, f021,f022,f023 be
morphism of C2 such that
A65: g1
=
[f011, f021] & g2
=
[f012, f022] & (F1
. f011)
= (F2
. f021) & (F1
. f012)
= (F2
. f022) & f011
|> f012 & f021
|> f022 & f013
= (f011
(*) f012) & f023
= (f021
(*) f022) & (g1
(*) g2)
=
[f013, f023] by
A13;
assume g2
|> g3;
then
consider f111,f112,f113 be
morphism of C1, f121,f122,f123 be
morphism of C2 such that
A66: g2
=
[f111, f121] & g3
=
[f112, f122] & (F1
. f111)
= (F2
. f121) & (F1
. f112)
= (F2
. f122) & f111
|> f112 & f121
|> f122 & f113
= (f111
(*) f112) & f123
= (f121
(*) f122) & (g2
(*) g3)
=
[f113, f123] by
A13;
assume (g1
(*) g2)
|> g3;
then
consider f211,f212,f213 be
morphism of C1, f221,f222,f223 be
morphism of C2 such that
A67: (g1
(*) g2)
=
[f211, f221] & g3
=
[f212, f222] & (F1
. f211)
= (F2
. f221) & (F1
. f212)
= (F2
. f222) & f211
|> f212 & f221
|> f222 & f213
= (f211
(*) f212) & f223
= (f221
(*) f222) & ((g1
(*) g2)
(*) g3)
=
[f213, f223] by
A13;
assume g1
|> (g2
(*) g3);
then
consider f311,f312,f313 be
morphism of C1, f321,f322,f323 be
morphism of C2 such that
A68: g1
=
[f311, f321] & (g2
(*) g3)
=
[f312, f322] & (F1
. f311)
= (F2
. f321) & (F1
. f312)
= (F2
. f322) & f311
|> f312 & f321
|> f322 & f313
= (f311
(*) f312) & f323
= (f321
(*) f322) & (g1
(*) (g2
(*) g3))
=
[f313, f323] by
A13;
A69: f113
= f312 & f123
= f322 by
A66,
A68,
XTUPLE_0: 1;
A70: f013
= f211 & f023
= f221 by
A65,
A67,
XTUPLE_0: 1;
A71: f011
= f311 & f021
= f321 by
A65,
A68,
XTUPLE_0: 1;
A72: f012
= f111 & f022
= f121 by
A65,
A66,
XTUPLE_0: 1;
A73: f112
= f212 & f122
= f222 by
A66,
A67,
XTUPLE_0: 1;
A74: f313
= f213 by
A67,
A65,
A66,
A68,
A69,
A70,
A71,
A72,
A73,
CAT_6:def 10;
thus (g1
(*) (g2
(*) g3))
= ((g1
(*) g2)
(*) g3) by
A68,
A67,
A74,
A65,
A66,
A69,
A70,
A71,
A72,
A73,
CAT_6:def 10;
end;
then
reconsider D as
strict
category by
A53,
A52,
A34,
A33,
CAT_6:def 10,
CAT_6:def 11,
CAT_6:def 12,
CAT_6:def 7,
CAT_6:def 9;
A75: for x be
object holds x
in comp iff x
in {
[
[f1, f2], f3] where f1,f2,f3 be
morphism of D : f1
in the
carrier of D & f2
in the
carrier of D & f3
in the
carrier of D & for f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 st f1
=
[f11, f21] & f2
=
[f12, f22] & f3
=
[f13, f23] holds f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22) }
proof
let x be
object;
hereby
assume x
in comp;
then
consider x1,x2,x3 be
Element of car such that
A76: x
=
[
[x1, x2], x3] & x1
in car & x2
in car & x3
in car & for f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 st x1
=
[f11, f21] & x2
=
[f12, f22] & x3
=
[f13, f23] holds f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22);
reconsider f1 = x1, f2 = x2, f3 = x3 as
morphism of D by
CAT_6:def 1;
f1
in the
carrier of D & f2
in the
carrier of D & f3
in the
carrier of D & for f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 st f1
=
[f11, f21] & f2
=
[f12, f22] & f3
=
[f13, f23] holds f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22) by
A76;
hence x
in {
[
[f1, f2], f3] where f1,f2,f3 be
morphism of D : f1
in the
carrier of D & f2
in the
carrier of D & f3
in the
carrier of D & for f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 st f1
=
[f11, f21] & f2
=
[f12, f22] & f3
=
[f13, f23] holds f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22) } by
A76;
end;
assume x
in {
[
[f1, f2], f3] where f1,f2,f3 be
morphism of D : f1
in the
carrier of D & f2
in the
carrier of D & f3
in the
carrier of D & for f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 st f1
=
[f11, f21] & f2
=
[f12, f22] & f3
=
[f13, f23] holds f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22) };
then
consider f1,f2,f3 be
morphism of D such that
A77: x
=
[
[f1, f2], f3] & f1
in the
carrier of D & f2
in the
carrier of D & f3
in the
carrier of D & for f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 st f1
=
[f11, f21] & f2
=
[f12, f22] & f3
=
[f13, f23] holds f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22);
reconsider x1 = f1, x2 = f2, x3 = f3 as
Element of car by
A77;
thus x
in comp by
A77;
end;
ex P1 be
Functor of D, C1, P2 be
Functor of D, C2 st P1 is
covariant & P2 is
covariant & (F1
(*) P1)
= (F2
(*) P2) & for D1 be
category, G1 be
Functor of D1, C1, G2 be
Functor of D1, C2 st G1 is
covariant & G2 is
covariant & (F1
(*) G1)
= (F2
(*) G2) holds ex H be
Functor of D1, D st H is
covariant & (P1
(*) H)
= G1 & (P2
(*) H)
= G2 & for H1 be
Functor of D1, D st H1 is
covariant & (P1
(*) H1)
= G1 & (P2
(*) H1)
= G2 holds H
= H1
proof
per cases ;
suppose
A78: D is
empty;
then
reconsider D0 = D as
empty
category;
reconsider P1 = the
covariant
Functor of D0, C1 as
Functor of D, C1;
reconsider P2 = the
covariant
Functor of D0, C2 as
Functor of D, C2;
take P1, P2;
thus P1 is
covariant & P2 is
covariant & (F1
(*) P1)
= (F2
(*) P2);
let D1 be
category, G1 be
Functor of D1, C1, G2 be
Functor of D1, C2;
assume
A79: G1 is
covariant;
assume
A80: G2 is
covariant;
assume
A81: (F1
(*) G1)
= (F2
(*) G2);
D1 is
empty
proof
assume
A82: D1 is non
empty;
then
consider x be
object such that
A83: x
in the
carrier of D1 by
XBOOLE_0:def 1;
reconsider d = x as
morphism of D1 by
A83,
CAT_6:def 1;
set f1 = (G1
. d);
set f2 = (G2
. d);
A84: C1 is non
empty & C2 is non
empty by
A82,
A79,
A80,
CAT_6: 31;
A85: x
in (
dom G1) & x
in (
dom G2) by
A84,
A83,
FUNCT_2:def 1;
A86: (G1
. d)
= (G1
. x) by
A82,
CAT_6:def 21;
A87: (G2
. d)
= (G2
. x) by
A82,
CAT_6:def 21;
A88: (F1
. f1)
= (F1
. (G1
. x)) by
A86,
A84,
CAT_6:def 21
.= ((G1
* F1)
. x) by
A85,
FUNCT_1: 13
.= ((F2
(*) G2)
. x) by
A81,
A1,
A79,
CAT_6:def 27
.= ((G2
* F2)
. x) by
A1,
A80,
CAT_6:def 27
.= (F2
. (G2
. x)) by
A85,
FUNCT_1: 13
.= (F2
. f2) by
A87,
A84,
CAT_6:def 21;
f1
in the
carrier of C1 & f2
in the
carrier of C2 by
A84,
Th1;
then
[f1, f2]
in the
carrier of D by
A88;
hence contradiction by
A78;
end;
then
reconsider D01 = D1 as
empty
category;
reconsider H = the
covariant
Functor of D01, D as
Functor of D1, D;
take H;
thus H is
covariant & (P1
(*) H)
= G1 & (P2
(*) H)
= G2;
let H1 be
Functor of D1, D;
assume H1 is
covariant & (P1
(*) H1)
= G1 & (P2
(*) H1)
= G2;
thus H
= H1;
end;
suppose
A89: D is non
empty;
deffunc
PF1(
object) = ($1
`1 );
A90: for x be
object st x
in the
carrier of D holds
PF1(x)
in the
carrier of C1
proof
let x be
object;
assume x
in the
carrier of D;
then
consider f1 be
morphism of C1, f2 be
morphism of C2 such that
A91: x
=
[f1, f2] & f1
in the
carrier of C1 & f2
in the
carrier of C2 & (F1
. f1)
= (F2
. f2);
thus
PF1(x)
in the
carrier of C1 by
A91;
end;
consider P1 be
Function of the
carrier of D, the
carrier of C1 such that
A92: for x be
object st x
in the
carrier of D holds (P1
. x)
=
PF1(x) from
FUNCT_2:sch 2(
A90);
reconsider P1 as
Functor of D, C1;
deffunc
PF2(
object) = ($1
`2 );
A93: for x be
object st x
in the
carrier of D holds
PF2(x)
in the
carrier of C2
proof
let x be
object;
assume x
in the
carrier of D;
then
consider f1 be
morphism of C1, f2 be
morphism of C2 such that
A94: x
=
[f1, f2] & f1
in the
carrier of C1 & f2
in the
carrier of C2 & (F1
. f1)
= (F2
. f2);
thus
PF2(x)
in the
carrier of C2 by
A94;
end;
consider P2 be
Function of the
carrier of D, the
carrier of C2 such that
A95: for x be
object st x
in the
carrier of D holds (P2
. x)
=
PF2(x) from
FUNCT_2:sch 2(
A93);
reconsider P2 as
Functor of D, C2;
take P1, P2;
A96: for g be
morphism of D st g is
identity holds ex f1 be
morphism of C1, f2 be
morphism of C2 st g
=
[f1, f2] & f1 is
identity & f2 is
identity
proof
let g be
morphism of D;
assume
A97: g is
identity;
g
in the
carrier of D by
A89,
Th1;
then
consider f1 be
morphism of C1, f2 be
morphism of C2 such that
A98: g
=
[f1, f2] & f1
in the
carrier of C1 & f2
in the
carrier of C2 & (F1
. f1)
= (F2
. f2);
take f1, f2;
A99: C1 is non
empty by
A98;
then
consider d1 be
morphism of C1 such that
A100: (
dom f1)
= d1 & f1
|> d1 & d1 is
identity by
CAT_6:def 18;
A101: C2 is non
empty by
A98;
then
consider d2 be
morphism of C2 such that
A102: (
dom f2)
= d2 & f2
|> d2 & d2 is
identity by
CAT_6:def 18;
set g1 =
[d1, d2];
A103: C is non
empty by
A1,
A99,
CAT_6: 31;
A104: d1
in the
carrier of C1 & d2
in the
carrier of C2 by
A99,
A101,
Th1;
A105: (F1
. d1)
= (F1
. (
dom f1)) by
A99,
A100,
CAT_6:def 21
.= (
dom (F2
. f2)) by
A98,
A1,
A99,
A103,
CAT_6: 32
.= (F2
. (
dom f2)) by
A1,
A101,
A103,
CAT_6: 32
.= (F2
. d2) by
A101,
A102,
CAT_6:def 21;
then g1
in the
carrier of D by
A104;
then
reconsider g1 as
morphism of D by
CAT_6:def 1;
A106: g
|> g1 by
A22,
A98,
A105,
A100,
A102;
thus g
=
[f1, f2] by
A98;
consider f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 such that
A107: g
=
[f11, f21] & g1
=
[f12, f22] & (F1
. f11)
= (F2
. f21) & (F1
. f12)
= (F2
. f22) & f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22) & (g
(*) g1)
=
[f13, f23] by
A13,
A22,
A98,
A105,
A100,
A102;
A108: f11
= f1 & f21
= f2 & f12
= d1 & f22
= d2 by
A98,
A107,
XTUPLE_0: 1;
f1
= (f1
(*) d1) & f2
= (f2
(*) d2) by
A100,
A102,
CAT_6:def 5,
CAT_6:def 14;
then g
= g1 by
A106,
A97,
CAT_6:def 14,
CAT_6:def 4,
A108,
A107;
hence thesis by
A100,
A102,
A98,
XTUPLE_0: 1;
end;
for g be
morphism of D st g is
identity holds (P1
. g) is
identity & (P2
. g) is
identity
proof
let g be
morphism of D;
assume g is
identity;
then
consider f1 be
morphism of C1, f2 be
morphism of C2 such that
A109: g
=
[f1, f2] & f1 is
identity & f2 is
identity by
A96;
reconsider x = g as
object;
(P1
. g)
= (P1
. x) by
CAT_6:def 21,
A89
.=
PF1(x) by
A92,
A89,
Th1
.= f1 by
A109;
hence (P1
. g) is
identity by
A109;
(P2
. g)
= (P2
. x) by
CAT_6:def 21,
A89
.=
PF2(x) by
A95,
A89,
Th1
.= f2 by
A109;
hence (P2
. g) is
identity by
A109;
end;
then (for g be
morphism of D st g is
identity holds (P1
. g) is
identity) & (for g be
morphism of D st g is
identity holds (P2
. g) is
identity);
then
A110: P1 is
identity-preserving & P2 is
identity-preserving by
CAT_6:def 22;
for g1,g2 be
morphism of D st g1
|> g2 holds (P1
. g1)
|> (P1
. g2) & (P1
. (g1
(*) g2))
= ((P1
. g1)
(*) (P1
. g2)) & (P2
. g1)
|> (P2
. g2) & (P2
. (g1
(*) g2))
= ((P2
. g1)
(*) (P2
. g2))
proof
let g1,g2 be
morphism of D;
assume g1
|> g2;
then
consider f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 such that
A111: g1
=
[f11, f21] & g2
=
[f12, f22] & (F1
. f11)
= (F2
. f21) & (F1
. f12)
= (F2
. f22) & f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22) & (g1
(*) g2)
=
[f13, f23] by
A13;
reconsider x1 = g1, x2 = g2, x12 = (g1
(*) g2) as
object;
A112: (P1
. g1)
= (P1
. x1) by
CAT_6:def 21,
A89
.=
PF1(x1) by
A92,
A89,
Th1
.= f11 by
A111;
A113: (P1
. g2)
= (P1
. x2) by
CAT_6:def 21,
A89
.=
PF1(x2) by
A92,
A89,
Th1
.= f12 by
A111;
A114: (P1
. (g1
(*) g2))
= (P1
. x12) by
CAT_6:def 21,
A89
.=
PF1(x12) by
A92,
A89,
Th1
.= f13 by
A111;
thus (P1
. g1)
|> (P1
. g2) by
A112,
A113,
A111;
thus (P1
. (g1
(*) g2))
= ((P1
. g1)
(*) (P1
. g2)) by
A112,
A113,
A114,
A111;
A115: (P2
. g1)
= (P2
. x1) by
CAT_6:def 21,
A89
.=
PF2(x1) by
A95,
A89,
Th1
.= f21 by
A111;
A116: (P2
. g2)
= (P2
. x2) by
CAT_6:def 21,
A89
.=
PF2(x2) by
A95,
A89,
Th1
.= f22 by
A111;
A117: (P2
. (g1
(*) g2))
= (P2
. x12) by
CAT_6:def 21,
A89
.=
PF2(x12) by
A95,
A89,
Th1
.= f23 by
A111;
thus (P2
. g1)
|> (P2
. g2) by
A115,
A116,
A111;
thus (P2
. (g1
(*) g2))
= ((P2
. g1)
(*) (P2
. g2)) by
A115,
A116,
A117,
A111;
end;
then (for g1,g2 be
morphism of D st g1
|> g2 holds (P1
. g1)
|> (P1
. g2) & (P1
. (g1
(*) g2))
= ((P1
. g1)
(*) (P1
. g2))) & (for g1,g2 be
morphism of D st g1
|> g2 holds (P2
. g1)
|> (P2
. g2) & (P2
. (g1
(*) g2))
= ((P2
. g1)
(*) (P2
. g2)));
hence
A118: P1 is
covariant & P2 is
covariant by
A110,
CAT_6:def 23,
CAT_6:def 25;
for x be
object st x
in the
carrier of D holds ((F1
(*) P1)
. x)
= ((F2
(*) P2)
. x)
proof
let x be
object;
assume
A119: x
in the
carrier of D;
then
consider f1 be
morphism of C1, f2 be
morphism of C2 such that
A120: x
=
[f1, f2] & f1
in the
carrier of C1 & f2
in the
carrier of C2 & (F1
. f1)
= (F2
. f2);
reconsider g = x as
morphism of D by
A119,
CAT_6:def 1;
A121: (P1
. g)
= (P1
. x) by
CAT_6:def 21,
A89
.=
PF1(x) by
A92,
A119
.= f1 by
A120;
A122: (P2
. g)
= (P2
. x) by
CAT_6:def 21,
A89
.=
PF2(x) by
A95,
A119
.= f2 by
A120;
thus ((F1
(*) P1)
. x)
= ((F1
(*) P1)
. g) by
A89,
CAT_6:def 21
.= (F1
. f1) by
A121,
A89,
A1,
A118,
CAT_6: 34
.= ((F2
(*) P2)
. g) by
A89,
A1,
A118,
CAT_6: 34,
A122,
A120
.= ((F2
(*) P2)
. x) by
A89,
CAT_6:def 21;
end;
hence (F1
(*) P1)
= (F2
(*) P2) by
FUNCT_2: 12;
let D1 be
category;
let G1 be
Functor of D1, C1;
let G2 be
Functor of D1, C2;
assume
A123: G1 is
covariant;
assume
A124: G2 is
covariant;
assume
A125: (F1
(*) G1)
= (F2
(*) G2);
deffunc
H2(
object) =
[(G1
. $1), (G2
. $1)];
A126: for x be
object st x
in the
carrier of D1 holds
H2(x)
in the
carrier of D
proof
let x be
object;
assume
A127: x
in the
carrier of D1;
then
A128: D1 is non
empty;
reconsider d = x as
morphism of D1 by
A127,
CAT_6:def 1;
A129: C1 is non
empty & C2 is non
empty by
A89,
A118,
CAT_6: 31;
A130: (G1
. d)
in the
carrier of C1 & (G2
. d)
in the
carrier of C2 by
A129,
Th1;
A131: (G1
. d)
= (G1
. x) & (G2
. d)
= (G2
. x) by
A128,
CAT_6:def 21;
(F1
. (G1
. d))
= ((F1
(*) G1)
. d) by
A123,
A128,
A1,
CAT_6: 34
.= (F2
. (G2
. d)) by
A124,
A125,
A128,
A1,
CAT_6: 34;
hence
H2(x)
in the
carrier of D by
A130,
A131;
end;
consider H be
Function of the
carrier of D1, the
carrier of D such that
A132: for x be
object st x
in the
carrier of D1 holds (H
. x)
=
H2(x) from
FUNCT_2:sch 2(
A126);
reconsider H as
Functor of D1, D;
take H;
for d be
morphism of D1 st d is
identity holds (H
. d) is
identity
proof
let d be
morphism of D1;
assume
A133: d is
identity;
per cases ;
suppose D1 is
empty;
then (H
. d)
= the
Object of D by
CAT_6:def 21;
hence thesis by
A89,
CAT_6: 22;
end;
suppose
A134: D1 is non
empty;
for g1 be
morphism of D st (H
. d)
|> g1 holds ((H
. d)
(*) g1)
= g1
proof
let g1 be
morphism of D;
assume (H
. d)
|> g1;
then
consider d1,f1,f13 be
morphism of C1, d2,f2,f23 be
morphism of C2 such that
A135: (H
. d)
=
[d1, d2] & g1
=
[f1, f2] & (F1
. d1)
= (F2
. d2) & (F1
. f1)
= (F2
. f2) & d1
|> f1 & d2
|> f2 & f13
= (d1
(*) f1) & f23
= (d2
(*) f2) & ((H
. d)
(*) g1)
=
[f13, f23] by
A13;
reconsider x = d as
object;
A136: (G1
. x)
= (G1
. d) & (G2
. x)
= (G2
. d) by
A134,
CAT_6:def 21;
(H
. d)
= (H
. x) by
A134,
CAT_6:def 21
.=
[(G1
. d), (G2
. d)] by
A136,
A134,
Th1,
A132;
then d1
= (G1
. d) & d2
= (G2
. d) by
A135,
XTUPLE_0: 1;
then d1 is
identity & d2 is
identity by
A133,
CAT_6:def 22,
A123,
A124,
CAT_6:def 25;
then (d1
(*) f1)
= f1 & (d2
(*) f2)
= f2 by
A135,
CAT_6:def 14,
CAT_6:def 4;
hence ((H
. d)
(*) g1)
= g1 by
A135;
end;
then
A137: (H
. d) is
left_identity by
CAT_6:def 4;
for g1 be
morphism of D st g1
|> (H
. d) holds (g1
(*) (H
. d))
= g1
proof
let g1 be
morphism of D;
assume g1
|> (H
. d);
then
consider f1,d1,f13 be
morphism of C1, f2,d2,f23 be
morphism of C2 such that
A138: g1
=
[f1, f2] & (H
. d)
=
[d1, d2] & (F1
. f1)
= (F2
. f2) & (F1
. d1)
= (F2
. d2) & f1
|> d1 & f2
|> d2 & f13
= (f1
(*) d1) & f23
= (f2
(*) d2) & (g1
(*) (H
. d))
=
[f13, f23] by
A13;
reconsider x = d as
object;
A139: (G1
. x)
= (G1
. d) & (G2
. x)
= (G2
. d) by
A134,
CAT_6:def 21;
(H
. d)
= (H
. x) by
A134,
CAT_6:def 21
.=
[(G1
. d), (G2
. d)] by
A139,
A134,
Th1,
A132;
then d1
= (G1
. d) & d2
= (G2
. d) by
A138,
XTUPLE_0: 1;
then d1 is
identity & d2 is
identity by
A133,
CAT_6:def 22,
A123,
A124,
CAT_6:def 25;
then (f1
(*) d1)
= f1 & (f2
(*) d2)
= f2 by
A138,
CAT_6:def 14,
CAT_6:def 5;
hence (g1
(*) (H
. d))
= g1 by
A138;
end;
hence (H
. d) is
identity by
A137,
CAT_6:def 5,
CAT_6:def 14;
end;
end;
then
A140: H is
identity-preserving by
CAT_6:def 22;
for d1,d2 be
morphism of D1 st d1
|> d2 holds (H
. d1)
|> (H
. d2) & (H
. (d1
(*) d2))
= ((H
. d1)
(*) (H
. d2))
proof
let d1,d2 be
morphism of D1;
assume
A141: d1
|> d2;
then
A142: D1 is non
empty by
CAT_6: 1;
reconsider x1 = d1, x2 = d2 as
object;
A143: (G1
. x1)
= (G1
. d1) & (G2
. x1)
= (G2
. d1) by
A142,
CAT_6:def 21;
A144: (G1
. x2)
= (G1
. d2) & (G2
. x2)
= (G2
. d2) by
A142,
CAT_6:def 21;
A145: G1 is
multiplicative & G2 is
multiplicative by
A123,
A124,
CAT_6:def 25;
A146: d1
in the
carrier of D1 by
A141,
Th1,
CAT_6: 1;
A147: (H
. d1)
= (H
. x1) by
A142,
CAT_6:def 21
.=
[(G1
. d1), (G2
. d1)] by
A143,
A146,
A132;
(H
. d1)
in the
carrier of D by
A89,
Th1;
then
consider f11 be
morphism of C1, f21 be
morphism of C2 such that
A148: (H
. d1)
=
[f11, f21] & f11
in the
carrier of C1 & f21
in the
carrier of C2 & (F1
. f11)
= (F2
. f21);
A149: d2
in the
carrier of D1 by
A141,
Th1,
CAT_6: 1;
A150: (H
. d2)
= (H
. x2) by
A142,
CAT_6:def 21
.=
[(G1
. d2), (G2
. d2)] by
A144,
A149,
A132;
(H
. d2)
in the
carrier of D by
A89,
Th1;
then
consider f12 be
morphism of C1, f22 be
morphism of C2 such that
A151: (H
. d2)
=
[f12, f22] & f12
in the
carrier of C1 & f22
in the
carrier of C2 & (F1
. f12)
= (F2
. f22);
A152: f11
= (G1
. d1) & f21
= (G2
. d1) by
A148,
A147,
XTUPLE_0: 1;
A153: f12
= (G1
. d2) & f22
= (G2
. d2) by
A151,
A150,
XTUPLE_0: 1;
A154: (G1
. d1)
|> (G1
. d2) & (G1
. (d1
(*) d2))
= ((G1
. d1)
(*) (G1
. d2)) by
A141,
A145,
CAT_6:def 23;
A155: (G2
. d1)
|> (G2
. d2) & (G2
. (d1
(*) d2))
= ((G2
. d1)
(*) (G2
. d2)) by
A141,
A145,
CAT_6:def 23;
thus (H
. d1)
|> (H
. d2) by
A22,
A152,
A153,
A154,
A155,
A148,
A151;
consider f011,f012,f013 be
morphism of C1, f021,f022,f023 be
morphism of C2 such that
A156: (H
. d1)
=
[f011, f021] & (H
. d2)
=
[f012, f022] & (F1
. f011)
= (F2
. f021) & (F1
. f012)
= (F2
. f022) & f011
|> f012 & f021
|> f022 & f013
= (f011
(*) f012) & f023
= (f021
(*) f022) & ((H
. d1)
(*) (H
. d2))
=
[f013, f023] by
A13,
A22,
A152,
A153,
A154,
A155,
A148,
A151;
A157: f011
= (G1
. d1) & f021
= (G2
. d1) & f012
= (G1
. d2) & f022
= (G2
. d2) by
A156,
A150,
A147,
XTUPLE_0: 1;
reconsider x12 = (d1
(*) d2) as
object;
A158: (G1
. x12)
= (G1
. (d1
(*) d2)) & (G2
. x12)
= (G2
. (d1
(*) d2)) by
A142,
CAT_6:def 21;
thus (H
. (d1
(*) d2))
= (H
. x12) by
A142,
CAT_6:def 21
.= ((H
. d1)
(*) (H
. d2)) by
A154,
A155,
A156,
A157,
A158,
A142,
Th1,
A132;
end;
hence
A159: H is
covariant by
A140,
CAT_6:def 23,
CAT_6:def 25;
for x be
object st x
in the
carrier of D1 holds ((P1
(*) H)
. x)
= (G1
. x)
proof
let x be
object;
assume
A160: x
in the
carrier of D1;
then
A161: D1 is non
empty;
reconsider d = x as
morphism of D1 by
A160,
CAT_6:def 1;
A162: (H
. d)
= (H
. x) by
A161,
CAT_6:def 21
.=
[(G1
. x), (G2
. x)] by
A160,
A132;
reconsider x1 = (H
. d) as
object;
thus ((P1
(*) H)
. x)
= ((P1
(*) H)
. d) by
A161,
CAT_6:def 21
.= (P1
. (H
. d)) by
A161,
A118,
A159,
CAT_6: 34
.= (P1
. x1) by
A89,
CAT_6:def 21
.=
PF1([) by
A92,
A89,
Th1,
A162
.= (G1
. x);
end;
hence (P1
(*) H)
= G1 by
FUNCT_2: 12;
for x be
object st x
in the
carrier of D1 holds ((P2
(*) H)
. x)
= (G2
. x)
proof
let x be
object;
assume
A163: x
in the
carrier of D1;
then
A164: D1 is non
empty;
reconsider d = x as
morphism of D1 by
A163,
CAT_6:def 1;
A165: (H
. d)
= (H
. x) by
A164,
CAT_6:def 21
.=
[(G1
. x), (G2
. x)] by
A163,
A132;
reconsider x2 = (H
. d) as
object;
thus ((P2
(*) H)
. x)
= ((P2
(*) H)
. d) by
A164,
CAT_6:def 21
.= (P2
. (H
. d)) by
A164,
A118,
A159,
CAT_6: 34
.= (P2
. x2) by
A89,
CAT_6:def 21
.=
PF2([) by
A165,
A95,
A89,
Th1
.= (G2
. x);
end;
hence (P2
(*) H)
= G2 by
FUNCT_2: 12;
let H1 be
Functor of D1, D;
assume
A166: H1 is
covariant;
assume
A167: (P1
(*) H1)
= G1;
assume
A168: (P2
(*) H1)
= G2;
for x be
object st x
in the
carrier of D1 holds (H
. x)
= (H1
. x)
proof
let x be
object;
assume
A169: x
in the
carrier of D1;
then
A170: D1 is non
empty;
reconsider d = x as
morphism of D1 by
A169,
CAT_6:def 1;
A171: (G1
. x)
= (G1
. d) & (G2
. x)
= (G2
. d) by
A170,
CAT_6:def 21;
(H1
. d)
in the
carrier of D by
A89,
Th1;
then
consider f1 be
morphism of C1, f2 be
morphism of C2 such that
A172: (H1
. d)
=
[f1, f2] & f1
in the
carrier of C1 & f2
in the
carrier of C2 & (F1
. f1)
= (F2
. f2);
reconsider x1 = (H1
. d) as
object;
A173: (G1
. d)
= (P1
. (H1
. d)) by
A167,
A170,
A166,
A118,
CAT_6: 34
.= (P1
. x1) by
A89,
CAT_6:def 21
.=
PF1([) by
A172,
A92,
A89,
Th1
.= f1;
A174: (G2
. d)
= (P2
. (H1
. d)) by
A168,
A170,
A166,
A118,
CAT_6: 34
.= (P2
. x1) by
A89,
CAT_6:def 21
.=
PF2([) by
A172,
A95,
A89,
Th1
.= f2;
thus (H
. x)
= (H1
. d) by
A173,
A174,
A172,
A171,
A169,
A132
.= (H1
. x) by
A170,
CAT_6:def 21;
end;
hence H
= H1 by
FUNCT_2: 12;
end;
end;
then
consider P1 be
Functor of D, C1, P2 be
Functor of D, C2 such that
A175: P1 is
covariant & P2 is
covariant & (F1
(*) P1)
= (F2
(*) P2) & for D1 be
category, G1 be
Functor of D1, C1, G2 be
Functor of D1, C2 st G1 is
covariant & G2 is
covariant & (F1
(*) G1)
= (F2
(*) G2) holds ex H be
Functor of D1, D st H is
covariant & (P1
(*) H)
= G1 & (P2
(*) H)
= G2 & for H1 be
Functor of D1, D st H1 is
covariant & (P1
(*) H1)
= G1 & (P2
(*) H1)
= G2 holds H
= H1;
take D, P1, P2;
thus thesis by
A75,
A175,
A1,
Def20,
TARSKI: 2;
end;
definition
let C,C1,C2 be
category;
let F1 be
Functor of C1, C;
let F2 be
Functor of C2, C;
::
CAT_7:def21
mode
pullback of F1,F2 ->
triple
object means
:
Def21: ex D be
strict
category, P1 be
Functor of D, C1, P2 be
Functor of D, C2 st it
=
[D, P1, P2] & P1 is
covariant & P2 is
covariant & (D,P1,P2)
is_pullback_of (F1,F2);
correctness
proof
consider D be
strict
category, P1 be
Functor of D, C1, P2 be
Functor of D, C2 such that
A3: the
carrier of D
= {
[f1, f2] where f1 be
morphism of C1, f2 be
morphism of C2 : f1
in the
carrier of C1 & f2
in the
carrier of C2 & (F1
. f1)
= (F2
. f2) } & the
composition of D
= {
[
[f1, f2], f3] where f1,f2,f3 be
morphism of D : f1
in the
carrier of D & f2
in the
carrier of D & f3
in the
carrier of D & for f11,f12,f13 be
morphism of C1, f21,f22,f23 be
morphism of C2 st f1
=
[f11, f21] & f2
=
[f12, f22] & f3
=
[f13, f23] holds f11
|> f12 & f21
|> f22 & f13
= (f11
(*) f12) & f23
= (f21
(*) f22) } & P1 is
covariant & P2 is
covariant & (D,P1,P2)
is_pullback_of (F1,F2) by
A1,
A2,
Th51;
take
[D, P1, P2];
thus thesis by
A3;
end;
end
definition
let C,C1,C2 be
category;
let F1 be
Functor of C1, C;
let F2 be
Functor of C2, C;
::
CAT_7:def22
func
[|F1,F2|] ->
strict
category equals
:
Def22: ( the
pullback of F1, F2
`1_3 );
correctness
proof
set T = the
pullback of F1, F2;
consider D be
strict
category, P1 be
Functor of D, C1, P2 be
Functor of D, C2 such that
A3: T
=
[D, P1, P2] & P1 is
covariant & P2 is
covariant & (D,P1,P2)
is_pullback_of (F1,F2) by
A1,
A2,
Def21;
thus thesis by
A3;
end;
end
definition
let C,C1,C2 be
category;
let F1 be
Functor of C1, C;
let F2 be
Functor of C2, C;
::
CAT_7:def23
func
pr1 (F1,F2) ->
Functor of
[|F1, F2|], C1 equals
:
Def23: ( the
pullback of F1, F2
`2_3 );
correctness
proof
set T = the
pullback of F1, F2;
consider D be
strict
category, P1 be
Functor of D, C1, P2 be
Functor of D, C2 such that
A3: T
=
[D, P1, P2] & P1 is
covariant & P2 is
covariant & (D,P1,P2)
is_pullback_of (F1,F2) by
A1,
A2,
Def21;
(
[D, P1, P2]
`1_3 )
= D & (
[D, P1, P2]
`2_3 )
= P1;
then D
=
[|F1, F2|] by
A1,
A2,
A3,
Def22;
then
reconsider P1 as
Functor of
[|F1, F2|], C1;
P1
= ( the
pullback of F1, F2
`2_3 ) by
A3;
hence thesis;
end;
::
CAT_7:def24
func
pr2 (F1,F2) ->
Functor of
[|F1, F2|], C2 equals
:
Def24: ( the
pullback of F1, F2
`3_3 );
correctness
proof
set T = the
pullback of F1, F2;
consider D be
strict
category, P1 be
Functor of D, C1, P2 be
Functor of D, C2 such that
A4: T
=
[D, P1, P2] & P1 is
covariant & P2 is
covariant & (D,P1,P2)
is_pullback_of (F1,F2) by
A1,
A2,
Def21;
(
[D, P1, P2]
`1_3 )
= D & (
[D, P1, P2]
`3_3 )
= P2;
then D
=
[|F1, F2|] by
A1,
A2,
A4,
Def22;
then
reconsider P2 as
Functor of
[|F1, F2|], C2;
P2
= ( the
pullback of F1, F2
`3_3 ) by
A4;
hence thesis;
end;
end
theorem ::
CAT_7:52
Th52: for C,C1,C2 be
category, F1 be
Functor of C1, C, F2 be
Functor of C2, C st F1 is
covariant & F2 is
covariant holds (
pr1 (F1,F2)) is
covariant & (
pr2 (F1,F2)) is
covariant & (
[|F1, F2|],(
pr1 (F1,F2)),(
pr2 (F1,F2)))
is_pullback_of (F1,F2)
proof
let C,C1,C2 be
category;
let F1 be
Functor of C1, C;
let F2 be
Functor of C2, C;
assume
A1: F1 is
covariant & F2 is
covariant;
set T = the
pullback of F1, F2;
consider D0 be
strict
category, P01 be
Functor of D0, C1, P02 be
Functor of D0, C2 such that
A2: T
=
[D0, P01, P02] & P01 is
covariant & P02 is
covariant & (D0,P01,P02)
is_pullback_of (F1,F2) by
A1,
Def21;
A3: (F1
(*) P01)
= (F2
(*) P02) & for D1 be
category, G1 be
Functor of D1, C1, G2 be
Functor of D1, C2 st G1 is
covariant & G2 is
covariant & (F1
(*) G1)
= (F2
(*) G2) holds ex H be
Functor of D1, D0 st H is
covariant & (P01
(*) H)
= G1 & (P02
(*) H)
= G2 & for H1 be
Functor of D1, D0 st H1 is
covariant & (P01
(*) H1)
= G1 & (P02
(*) H1)
= G2 holds H
= H1 by
A1,
A2,
Def20;
A4: (
[D0, P01, P02]
`1_3 )
= D0 & (
[D0, P01, P02]
`2_3 )
= P01 & (
[D0, P01, P02]
`3_3 )
= P02;
then
A5: D0
=
[|F1, F2|] by
A1,
A2,
Def22;
reconsider P1 = P01 as
Functor of
[|F1, F2|], C1 by
A5;
reconsider P2 = P02 as
Functor of
[|F1, F2|], C2 by
A5;
(
pr1 (F1,F2)) is
covariant & (
pr2 (F1,F2)) is
covariant & (F1
(*) (
pr1 (F1,F2)))
= (F2
(*) (
pr2 (F1,F2))) & for D1 be
category, G1 be
Functor of D1, C1, G2 be
Functor of D1, C2 st G1 is
covariant & G2 is
covariant & (F1
(*) G1)
= (F2
(*) G2) holds ex H be
Functor of D1,
[|F1, F2|] st H is
covariant & ((
pr1 (F1,F2))
(*) H)
= G1 & ((
pr2 (F1,F2))
(*) H)
= G2 & (for H1 be
Functor of D1,
[|F1, F2|] st H1 is
covariant & ((
pr1 (F1,F2))
(*) H1)
= G1 & ((
pr2 (F1,F2))
(*) H1)
= G2 holds H
= H1)
proof
thus
A6: (
pr1 (F1,F2)) is
covariant by
A2,
A5,
A4,
A1,
Def23;
thus
A7: (
pr2 (F1,F2)) is
covariant by
A2,
A5,
A4,
A1,
Def24;
thus (F1
(*) (
pr1 (F1,F2)))
= ((
pr1 (F1,F2))
* F1) by
A6,
A1,
CAT_6:def 27
.= (P01
* F1) by
A4,
A2,
A1,
Def23
.= (F1
(*) P01) by
A2,
A1,
CAT_6:def 27
.= (P02
* F2) by
A2,
A1,
A3,
CAT_6:def 27
.= ((
pr2 (F1,F2))
* F2) by
A4,
A2,
A1,
Def24
.= (F2
(*) (
pr2 (F1,F2))) by
A7,
A1,
CAT_6:def 27;
let D1 be
category;
let G1 be
Functor of D1, C1;
let G2 be
Functor of D1, C2;
assume G1 is
covariant & G2 is
covariant & (F1
(*) G1)
= (F2
(*) G2);
then
consider H0 be
Functor of D1, D0 such that
A8: H0 is
covariant & (P01
(*) H0)
= G1 & (P02
(*) H0)
= G2 & (for H1 be
Functor of D1, D0 st H1 is
covariant & (P01
(*) H1)
= G1 & (P02
(*) H1)
= G2 holds H0
= H1) by
A1,
A2,
Def20;
reconsider H = H0 as
Functor of D1,
[|F1, F2|] by
A5;
take H;
thus H is
covariant by
A5,
A8;
thus ((
pr1 (F1,F2))
(*) H)
= (H
* (
pr1 (F1,F2))) by
A5,
A8,
A6,
CAT_6:def 27
.= (H0
* P01) by
A4,
A2,
A1,
Def23
.= G1 by
A2,
A8,
CAT_6:def 27;
thus ((
pr2 (F1,F2))
(*) H)
= (H
* (
pr2 (F1,F2))) by
A5,
A8,
A7,
CAT_6:def 27
.= (H0
* P02) by
A4,
A2,
A1,
Def24
.= G2 by
A2,
A8,
CAT_6:def 27;
let H1 be
Functor of D1,
[|F1, F2|];
assume
A9: H1 is
covariant & ((
pr1 (F1,F2))
(*) H1)
= G1 & ((
pr2 (F1,F2))
(*) H1)
= G2;
reconsider H01 = H1 as
Functor of D1, D0 by
A5;
A10: (P01
(*) H01)
= (H01
* P01) by
A2,
A9,
A5,
CAT_6:def 27
.= (H1
* (
pr1 (F1,F2))) by
A4,
A2,
A1,
Def23
.= G1 by
A9,
A6,
CAT_6:def 27;
(P02
(*) H01)
= (H01
* P02) by
A2,
A9,
A5,
CAT_6:def 27
.= (H1
* (
pr2 (F1,F2))) by
A4,
A2,
A1,
Def24
.= G2 by
A9,
A7,
CAT_6:def 27;
hence H
= H1 by
A8,
A9,
A5,
A10;
end;
hence thesis by
A1,
Def20;
end;
theorem ::
CAT_7:53
for C,C1,C2 be
category, F1 be
Functor of C1, C, F2 be
Functor of C2, C st F1 is
covariant & F2 is
covariant holds
[|F1, F2|]
~=
[|F2, F1|]
proof
let C,C1,C2 be
category;
let F1 be
Functor of C1, C;
let F2 be
Functor of C2, C;
assume
A1: F1 is
covariant & F2 is
covariant;
A2: (
pr1 (F1,F2)) is
covariant & (
pr2 (F1,F2)) is
covariant & (
[|F1, F2|],(
pr1 (F1,F2)),(
pr2 (F1,F2)))
is_pullback_of (F1,F2) by
A1,
Th52;
A3: (
pr1 (F2,F1)) is
covariant & (
pr2 (F2,F1)) is
covariant & (
[|F2, F1|],(
pr1 (F2,F1)),(
pr2 (F2,F1)))
is_pullback_of (F2,F1) by
A1,
Th52;
then (
[|F2, F1|],(
pr2 (F2,F1)),(
pr1 (F2,F1)))
is_pullback_of (F1,F2) by
A1,
Th47;
hence
[|F1, F2|]
~=
[|F2, F1|] by
A1,
A2,
A3,
Th46;
end;
theorem ::
CAT_7:54
ex C,C1,C2 be
Category, F1 be
Functor of C1, C, F2 be
Functor of C2, C st not ex D be
Category, P1 be
Functor of D, C1, P2 be
Functor of D, C2 st (F1
* P1)
= (F2
* P2) & for D1 be
Category, G1 be
Functor of D1, C1, G2 be
Functor of D1, C2 st (F1
* G1)
= (F2
* G2) holds ex H be
Functor of D1, D st (P1
* H)
= G1 & (P2
* H)
= G2 & for H1 be
Functor of D1, D st (P1
* H1)
= G1 & (P2
* H1)
= G2 holds H
= H1
proof
set C = (
Alter (
OrdC 2));
set C1 = (
Alter (
OrdC 2));
set C2 = (
Alter (
OrdC 2));
consider f be
morphism of (
OrdC 2) such that not f is
identity and (
Ob (
OrdC 2))
=
{(
dom f), (
cod f)} and
A1: (
Mor (
OrdC 2))
=
{(
dom f), (
cod f), f} and
A2: ((
dom f),(
cod f),f)
are_mutually_distinct by
Th39;
reconsider g1 = (
dom f), g2 = (
cod f) as
morphism of (
OrdC 2) by
A1,
ENUMSET1:def 1;
reconsider F1 = (
MORPHISM g1) as
Functor of C1, C by
CAT_6: 47;
reconsider F2 = (
MORPHISM g2) as
Functor of C2, C by
CAT_6: 47;
take C, C1, C2, F1, F2;
assume ex D be
Category, P1 be
Functor of D, C1, P2 be
Functor of D, C2 st (F1
* P1)
= (F2
* P2) & for D1 be
Category, G1 be
Functor of D1, C1, G2 be
Functor of D1, C2 st (F1
* G1)
= (F2
* G2) holds ex H be
Functor of D1, D st (P1
* H)
= G1 & (P2
* H)
= G2 & for H1 be
Functor of D1, D st (P1
* H1)
= G1 & (P2
* H1)
= G2 holds H
= H1;
then
consider D be
Category, P1 be
Functor of D, C1, P2 be
Functor of D, C2 such that
A3: (F1
* P1)
= (F2
* P2) & for D1 be
Category, G1 be
Functor of D1, C1, G2 be
Functor of D1, C2 st (F1
* G1)
= (F2
* G2) holds ex H be
Functor of D1, D st (P1
* H)
= G1 & (P2
* H)
= G2 & for H1 be
Functor of D1, D st (P1
* H1)
= G1 & (P2
* H1)
= G2 holds H
= H1;
set g = the
Morphism of D;
A4: g
in the
carrier' of D;
then
A5: g
in (
dom P1) by
FUNCT_2:def 1;
A6: g
in (
dom P2) by
A4,
FUNCT_2:def 1;
A7: (
Alter (
OrdC 2))
=
CatStr (# (
Ob (
OrdC 2)), (
Mor (
OrdC 2)), (
SourceMap (
OrdC 2)), (
TargetMap (
OrdC 2)), (
CompMap (
OrdC 2)) #) by
CAT_6:def 33;
reconsider f1 = (P1
. g) as
morphism of (
OrdC 2) by
A7;
reconsider f2 = (P2
. g) as
morphism of (
OrdC 2) by
A7;
A8: ((F1
* P1)
. g)
= (F1
. (P1
. g)) by
A5,
FUNCT_1: 13
.= ((
MORPHISM g1)
. f1) by
CAT_6:def 21
.= g1 by
Th40,
CAT_6: 22;
((F2
* P2)
. g)
= (F2
. (P2
. g)) by
A6,
FUNCT_1: 13
.= ((
MORPHISM g2)
. f2) by
CAT_6:def 21
.= g2 by
Th40,
CAT_6: 22;
hence contradiction by
A8,
A3,
A2,
ZFMISC_1:def 5;
end;