:: ALTCAT_3 semantic presentation
begin
definition
let C be non empty with_units AltCatStr ;
let o1, o2 be object of C;
let A be Morphism of o1,o2;
let B be Morphism of o2,o1;
predA is_left_inverse_of B means :Def1: :: ALTCAT_3:def 1
A * B = idm o2;
end;
:: deftheorem Def1 defines is_left_inverse_of ALTCAT_3:def_1_:_
for C being non empty with_units AltCatStr
for o1, o2 being object of C
for A being Morphism of o1,o2
for B being Morphism of o2,o1 holds
( A is_left_inverse_of B iff A * B = idm o2 );
notation
let C be non empty with_units AltCatStr ;
let o1, o2 be object of C;
let A be Morphism of o1,o2;
let B be Morphism of o2,o1;
synonym B is_right_inverse_of A for A is_left_inverse_of B;
end;
definition
let C be non empty with_units AltCatStr ;
let o1, o2 be object of C;
let A be Morphism of o1,o2;
attrA is retraction means :Def2: :: ALTCAT_3:def 2
ex B being Morphism of o2,o1 st B is_right_inverse_of A;
end;
:: deftheorem Def2 defines retraction ALTCAT_3:def_2_:_
for C being non empty with_units AltCatStr
for o1, o2 being object of C
for A being Morphism of o1,o2 holds
( A is retraction iff ex B being Morphism of o2,o1 st B is_right_inverse_of A );
definition
let C be non empty with_units AltCatStr ;
let o1, o2 be object of C;
let A be Morphism of o1,o2;
attrA is coretraction means :Def3: :: ALTCAT_3:def 3
ex B being Morphism of o2,o1 st B is_left_inverse_of A;
end;
:: deftheorem Def3 defines coretraction ALTCAT_3:def_3_:_
for C being non empty with_units AltCatStr
for o1, o2 being object of C
for A being Morphism of o1,o2 holds
( A is coretraction iff ex B being Morphism of o2,o1 st B is_left_inverse_of A );
theorem Th1: :: ALTCAT_3:1
for C being non empty with_units AltCatStr
for o being object of C holds
( idm o is retraction & idm o is coretraction )
proof
let C be non empty with_units AltCatStr ; ::_thesis: for o being object of C holds
( idm o is retraction & idm o is coretraction )
let o be object of C; ::_thesis: ( idm o is retraction & idm o is coretraction )
<^o,o^> <> {} by ALTCAT_1:19;
then (idm o) * (idm o) = idm o by ALTCAT_1:def_17;
then idm o is_left_inverse_of idm o by Def1;
hence ( idm o is retraction & idm o is coretraction ) by Def2, Def3; ::_thesis: verum
end;
definition
let C be category;
let o1, o2 be object of C;
assume that
B1: <^o1,o2^> <> {} and
B2: <^o2,o1^> <> {} ;
let A be Morphism of o1,o2;
assume B3: ( A is retraction & A is coretraction ) ;
funcA " -> Morphism of o2,o1 means :Def4: :: ALTCAT_3:def 4
( it is_left_inverse_of A & it is_right_inverse_of A );
existence
ex b1 being Morphism of o2,o1 st
( b1 is_left_inverse_of A & b1 is_right_inverse_of A )
proof
consider B1 being Morphism of o2,o1 such that
A1: B1 is_right_inverse_of A by B3, Def2;
take B1 ; ::_thesis: ( B1 is_left_inverse_of A & B1 is_right_inverse_of A )
consider B2 being Morphism of o2,o1 such that
A2: B2 is_left_inverse_of A by B3, Def3;
B1 = (idm o1) * B1 by B2, ALTCAT_1:20
.= (B2 * A) * B1 by A2, Def1
.= B2 * (A * B1) by B1, B2, ALTCAT_1:21
.= B2 * (idm o2) by A1, Def1
.= B2 by B2, ALTCAT_1:def_17 ;
hence ( B1 is_left_inverse_of A & B1 is_right_inverse_of A ) by A1, A2; ::_thesis: verum
end;
uniqueness
for b1, b2 being Morphism of o2,o1 st b1 is_left_inverse_of A & b1 is_right_inverse_of A & b2 is_left_inverse_of A & b2 is_right_inverse_of A holds
b1 = b2
proof
let M1, M2 be Morphism of o2,o1; ::_thesis: ( M1 is_left_inverse_of A & M1 is_right_inverse_of A & M2 is_left_inverse_of A & M2 is_right_inverse_of A implies M1 = M2 )
assume that
A3: M1 is_left_inverse_of A and
M1 is_right_inverse_of A and
M2 is_left_inverse_of A and
A4: M2 is_right_inverse_of A ; ::_thesis: M1 = M2
thus M1 = M1 * (idm o2) by B2, ALTCAT_1:def_17
.= M1 * (A * M2) by A4, Def1
.= (M1 * A) * M2 by B1, B2, ALTCAT_1:21
.= (idm o1) * M2 by A3, Def1
.= M2 by B2, ALTCAT_1:20 ; ::_thesis: verum
end;
end;
:: deftheorem Def4 defines " ALTCAT_3:def_4_:_
for C being category
for o1, o2 being object of C st <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
for A being Morphism of o1,o2 st A is retraction & A is coretraction holds
for b5 being Morphism of o2,o1 holds
( b5 = A " iff ( b5 is_left_inverse_of A & b5 is_right_inverse_of A ) );
theorem Th2: :: ALTCAT_3:2
for C being category
for o1, o2 being object of C st <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
for A being Morphism of o1,o2 st A is retraction & A is coretraction holds
( (A ") * A = idm o1 & A * (A ") = idm o2 )
proof
let C be category; ::_thesis: for o1, o2 being object of C st <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
for A being Morphism of o1,o2 st A is retraction & A is coretraction holds
( (A ") * A = idm o1 & A * (A ") = idm o2 )
let o1, o2 be object of C; ::_thesis: ( <^o1,o2^> <> {} & <^o2,o1^> <> {} implies for A being Morphism of o1,o2 st A is retraction & A is coretraction holds
( (A ") * A = idm o1 & A * (A ") = idm o2 ) )
assume A1: ( <^o1,o2^> <> {} & <^o2,o1^> <> {} ) ; ::_thesis: for A being Morphism of o1,o2 st A is retraction & A is coretraction holds
( (A ") * A = idm o1 & A * (A ") = idm o2 )
let A be Morphism of o1,o2; ::_thesis: ( A is retraction & A is coretraction implies ( (A ") * A = idm o1 & A * (A ") = idm o2 ) )
assume ( A is retraction & A is coretraction ) ; ::_thesis: ( (A ") * A = idm o1 & A * (A ") = idm o2 )
then ( A " is_left_inverse_of A & A " is_right_inverse_of A ) by A1, Def4;
hence ( (A ") * A = idm o1 & A * (A ") = idm o2 ) by Def1; ::_thesis: verum
end;
theorem Th3: :: ALTCAT_3:3
for C being category
for o1, o2 being object of C st <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
for A being Morphism of o1,o2 st A is retraction & A is coretraction holds
(A ") " = A
proof
let C be category; ::_thesis: for o1, o2 being object of C st <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
for A being Morphism of o1,o2 st A is retraction & A is coretraction holds
(A ") " = A
let o1, o2 be object of C; ::_thesis: ( <^o1,o2^> <> {} & <^o2,o1^> <> {} implies for A being Morphism of o1,o2 st A is retraction & A is coretraction holds
(A ") " = A )
assume that
A1: <^o1,o2^> <> {} and
A2: <^o2,o1^> <> {} ; ::_thesis: for A being Morphism of o1,o2 st A is retraction & A is coretraction holds
(A ") " = A
let A be Morphism of o1,o2; ::_thesis: ( A is retraction & A is coretraction implies (A ") " = A )
assume A3: ( A is retraction & A is coretraction ) ; ::_thesis: (A ") " = A
then A " is_left_inverse_of A by A1, A2, Def4;
then A4: A " is retraction by Def2;
A5: A " is_right_inverse_of A by A1, A2, A3, Def4;
then A " is coretraction by Def3;
then A6: (A ") " is_right_inverse_of A " by A1, A2, A4, Def4;
thus (A ") " = (idm o2) * ((A ") ") by A1, ALTCAT_1:20
.= (A * (A ")) * ((A ") ") by A5, Def1
.= A * ((A ") * ((A ") ")) by A1, A2, ALTCAT_1:21
.= A * (idm o1) by A6, Def1
.= A by A1, ALTCAT_1:def_17 ; ::_thesis: verum
end;
theorem Th4: :: ALTCAT_3:4
for C being category
for o being object of C holds (idm o) " = idm o
proof
let C be category; ::_thesis: for o being object of C holds (idm o) " = idm o
let o be object of C; ::_thesis: (idm o) " = idm o
A1: <^o,o^> <> {} by ALTCAT_1:19;
( idm o is retraction & idm o is coretraction ) by Th1;
then A2: (idm o) " is_left_inverse_of idm o by A1, Def4;
thus (idm o) " = ((idm o) ") * (idm o) by A1, ALTCAT_1:def_17
.= idm o by A2, Def1 ; ::_thesis: verum
end;
definition
let C be category;
let o1, o2 be object of C;
let A be Morphism of o1,o2;
attrA is iso means :Def5: :: ALTCAT_3:def 5
( A * (A ") = idm o2 & (A ") * A = idm o1 );
end;
:: deftheorem Def5 defines iso ALTCAT_3:def_5_:_
for C being category
for o1, o2 being object of C
for A being Morphism of o1,o2 holds
( A is iso iff ( A * (A ") = idm o2 & (A ") * A = idm o1 ) );
theorem Th5: :: ALTCAT_3:5
for C being category
for o1, o2 being object of C
for A being Morphism of o1,o2 st A is iso holds
( A is retraction & A is coretraction )
proof
let C be category; ::_thesis: for o1, o2 being object of C
for A being Morphism of o1,o2 st A is iso holds
( A is retraction & A is coretraction )
let o1, o2 be object of C; ::_thesis: for A being Morphism of o1,o2 st A is iso holds
( A is retraction & A is coretraction )
let A be Morphism of o1,o2; ::_thesis: ( A is iso implies ( A is retraction & A is coretraction ) )
assume A1: A is iso ; ::_thesis: ( A is retraction & A is coretraction )
then A * (A ") = idm o2 by Def5;
then A " is_right_inverse_of A by Def1;
hence A is retraction by Def2; ::_thesis: A is coretraction
(A ") * A = idm o1 by A1, Def5;
then A " is_left_inverse_of A by Def1;
hence A is coretraction by Def3; ::_thesis: verum
end;
theorem Th6: :: ALTCAT_3:6
for C being category
for o1, o2 being object of C st <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
for A being Morphism of o1,o2 holds
( A is iso iff ( A is retraction & A is coretraction ) )
proof
let C be category; ::_thesis: for o1, o2 being object of C st <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
for A being Morphism of o1,o2 holds
( A is iso iff ( A is retraction & A is coretraction ) )
let o1, o2 be object of C; ::_thesis: ( <^o1,o2^> <> {} & <^o2,o1^> <> {} implies for A being Morphism of o1,o2 holds
( A is iso iff ( A is retraction & A is coretraction ) ) )
assume A1: ( <^o1,o2^> <> {} & <^o2,o1^> <> {} ) ; ::_thesis: for A being Morphism of o1,o2 holds
( A is iso iff ( A is retraction & A is coretraction ) )
let A be Morphism of o1,o2; ::_thesis: ( A is iso iff ( A is retraction & A is coretraction ) )
thus ( A is iso implies ( A is retraction & A is coretraction ) ) by Th5; ::_thesis: ( A is retraction & A is coretraction implies A is iso )
assume A2: ( A is retraction & A is coretraction ) ; ::_thesis: A is iso
then A " is_right_inverse_of A by A1, Def4;
then A3: A * (A ") = idm o2 by Def1;
A " is_left_inverse_of A by A1, A2, Def4;
then (A ") * A = idm o1 by Def1;
hence A is iso by A3, Def5; ::_thesis: verum
end;
theorem Th7: :: ALTCAT_3:7
for C being category
for o1, o2, o3 being object of C
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} & A is iso & B is iso holds
( B * A is iso & (B * A) " = (A ") * (B ") )
proof
let C be category; ::_thesis: for o1, o2, o3 being object of C
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} & A is iso & B is iso holds
( B * A is iso & (B * A) " = (A ") * (B ") )
let o1, o2, o3 be object of C; ::_thesis: for A being Morphism of o1,o2
for B being Morphism of o2,o3 st <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} & A is iso & B is iso holds
( B * A is iso & (B * A) " = (A ") * (B ") )
let A be Morphism of o1,o2; ::_thesis: for B being Morphism of o2,o3 st <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} & A is iso & B is iso holds
( B * A is iso & (B * A) " = (A ") * (B ") )
let B be Morphism of o2,o3; ::_thesis: ( <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} & A is iso & B is iso implies ( B * A is iso & (B * A) " = (A ") * (B ") ) )
assume that
A1: <^o1,o2^> <> {} and
A2: <^o2,o3^> <> {} and
A3: <^o3,o1^> <> {} ; ::_thesis: ( not A is iso or not B is iso or ( B * A is iso & (B * A) " = (A ") * (B ") ) )
assume that
A4: A is iso and
A5: B is iso ; ::_thesis: ( B * A is iso & (B * A) " = (A ") * (B ") )
consider A1 being Morphism of o2,o1 such that
A6: A1 = A " ;
A7: <^o2,o1^> <> {} by A2, A3, ALTCAT_1:def_2;
then A8: ( A is retraction & A is coretraction ) by A1, A4, Th6;
consider B1 being Morphism of o3,o2 such that
A9: B1 = B " ;
A10: <^o3,o2^> <> {} by A1, A3, ALTCAT_1:def_2;
then A11: ( B is retraction & B is coretraction ) by A2, A5, Th6;
A12: (B * A) * (A1 * B1) = B * (A * (A1 * B1)) by A1, A2, A3, ALTCAT_1:21
.= B * ((A * A1) * B1) by A1, A7, A10, ALTCAT_1:21
.= B * ((idm o2) * B1) by A1, A7, A8, A6, Th2
.= B * B1 by A10, ALTCAT_1:20
.= idm o3 by A2, A10, A11, A9, Th2 ;
then A13: A1 * B1 is_right_inverse_of B * A by Def1;
then A14: B * A is retraction by Def2;
A15: <^o1,o3^> <> {} by A1, A2, ALTCAT_1:def_2;
then A16: (A1 * B1) * (B * A) = A1 * (B1 * (B * A)) by A7, A10, ALTCAT_1:21
.= A1 * ((B1 * B) * A) by A1, A2, A10, ALTCAT_1:21
.= A1 * ((idm o2) * A) by A2, A10, A11, A9, Th2
.= A1 * A by A1, ALTCAT_1:20
.= idm o1 by A1, A7, A8, A6, Th2 ;
then A17: A1 * B1 is_left_inverse_of B * A by Def1;
then B * A is coretraction by Def3;
then A1 * B1 = (B * A) " by A3, A15, A17, A13, A14, Def4;
hence ( B * A is iso & (B * A) " = (A ") * (B ") ) by A6, A9, A16, A12, Def5; ::_thesis: verum
end;
definition
let C be category;
let o1, o2 be object of C;
predo1,o2 are_iso means :Def6: :: ALTCAT_3:def 6
( <^o1,o2^> <> {} & <^o2,o1^> <> {} & ex A being Morphism of o1,o2 st A is iso );
reflexivity
for o1 being object of C holds
( <^o1,o1^> <> {} & <^o1,o1^> <> {} & ex A being Morphism of o1,o1 st A is iso )
proof
let o be object of C; ::_thesis: ( <^o,o^> <> {} & <^o,o^> <> {} & ex A being Morphism of o,o st A is iso )
thus A1: ( <^o,o^> <> {} & <^o,o^> <> {} ) by ALTCAT_1:19; ::_thesis: ex A being Morphism of o,o st A is iso
take idm o ; ::_thesis: idm o is iso
set A = idm o;
A2: ((idm o) ") * (idm o) = (idm o) * (idm o) by Th4
.= idm o by A1, ALTCAT_1:def_17 ;
(idm o) * ((idm o) ") = (idm o) * (idm o) by Th4
.= idm o by A1, ALTCAT_1:def_17 ;
hence idm o is iso by A2, Def5; ::_thesis: verum
end;
symmetry
for o1, o2 being object of C st <^o1,o2^> <> {} & <^o2,o1^> <> {} & ex A being Morphism of o1,o2 st A is iso holds
( <^o2,o1^> <> {} & <^o1,o2^> <> {} & ex A being Morphism of o2,o1 st A is iso )
proof
let o1, o2 be object of C; ::_thesis: ( <^o1,o2^> <> {} & <^o2,o1^> <> {} & ex A being Morphism of o1,o2 st A is iso implies ( <^o2,o1^> <> {} & <^o1,o2^> <> {} & ex A being Morphism of o2,o1 st A is iso ) )
assume that
A3: ( <^o1,o2^> <> {} & <^o2,o1^> <> {} ) and
A4: ex A being Morphism of o1,o2 st A is iso ; ::_thesis: ( <^o2,o1^> <> {} & <^o1,o2^> <> {} & ex A being Morphism of o2,o1 st A is iso )
thus ( <^o2,o1^> <> {} & <^o1,o2^> <> {} ) by A3; ::_thesis: ex A being Morphism of o2,o1 st A is iso
consider A being Morphism of o1,o2 such that
A5: A is iso by A4;
take A1 = A " ; ::_thesis: A1 is iso
A6: ( A is retraction & A is coretraction ) by A5, Th5;
then A7: (A1 ") * A1 = A * (A ") by A3, Th3
.= idm o2 by A3, A6, Th2 ;
A1 * (A1 ") = (A ") * A by A3, A6, Th3
.= idm o1 by A3, A6, Th2 ;
hence A1 is iso by A7, Def5; ::_thesis: verum
end;
end;
:: deftheorem Def6 defines are_iso ALTCAT_3:def_6_:_
for C being category
for o1, o2 being object of C holds
( o1,o2 are_iso iff ( <^o1,o2^> <> {} & <^o2,o1^> <> {} & ex A being Morphism of o1,o2 st A is iso ) );
theorem :: ALTCAT_3:8
for C being category
for o1, o2, o3 being object of C st o1,o2 are_iso & o2,o3 are_iso holds
o1,o3 are_iso
proof
let C be category; ::_thesis: for o1, o2, o3 being object of C st o1,o2 are_iso & o2,o3 are_iso holds
o1,o3 are_iso
let o1, o2, o3 be object of C; ::_thesis: ( o1,o2 are_iso & o2,o3 are_iso implies o1,o3 are_iso )
assume that
A1: o1,o2 are_iso and
A2: o2,o3 are_iso ; ::_thesis: o1,o3 are_iso
A3: ( <^o1,o2^> <> {} & <^o2,o3^> <> {} ) by A1, A2, Def6;
consider B being Morphism of o2,o3 such that
A4: B is iso by A2, Def6;
consider A being Morphism of o1,o2 such that
A5: A is iso by A1, Def6;
( <^o2,o1^> <> {} & <^o3,o2^> <> {} ) by A1, A2, Def6;
hence A6: ( <^o1,o3^> <> {} & <^o3,o1^> <> {} ) by A3, ALTCAT_1:def_2; :: according to ALTCAT_3:def_6 ::_thesis: ex A being Morphism of o1,o3 st A is iso
take B * A ; ::_thesis: B * A is iso
thus B * A is iso by A3, A6, A5, A4, Th7; ::_thesis: verum
end;
definition
let C be non empty AltCatStr ;
let o1, o2 be object of C;
let A be Morphism of o1,o2;
attrA is mono means :Def7: :: ALTCAT_3:def 7
for o being object of C st <^o,o1^> <> {} holds
for B, C being Morphism of o,o1 st A * B = A * C holds
B = C;
end;
:: deftheorem Def7 defines mono ALTCAT_3:def_7_:_
for C being non empty AltCatStr
for o1, o2 being object of C
for A being Morphism of o1,o2 holds
( A is mono iff for o being object of C st <^o,o1^> <> {} holds
for B, C being Morphism of o,o1 st A * B = A * C holds
B = C );
definition
let C be non empty AltCatStr ;
let o1, o2 be object of C;
let A be Morphism of o1,o2;
attrA is epi means :Def8: :: ALTCAT_3:def 8
for o being object of C st <^o2,o^> <> {} holds
for B, C being Morphism of o2,o st B * A = C * A holds
B = C;
end;
:: deftheorem Def8 defines epi ALTCAT_3:def_8_:_
for C being non empty AltCatStr
for o1, o2 being object of C
for A being Morphism of o1,o2 holds
( A is epi iff for o being object of C st <^o2,o^> <> {} holds
for B, C being Morphism of o2,o st B * A = C * A holds
B = C );
theorem Th9: :: ALTCAT_3:9
for C being non empty transitive associative AltCatStr
for o1, o2, o3 being object of C st <^o1,o2^> <> {} & <^o2,o3^> <> {} holds
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st A is mono & B is mono holds
B * A is mono
proof
let C be non empty transitive associative AltCatStr ; ::_thesis: for o1, o2, o3 being object of C st <^o1,o2^> <> {} & <^o2,o3^> <> {} holds
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st A is mono & B is mono holds
B * A is mono
let o1, o2, o3 be object of C; ::_thesis: ( <^o1,o2^> <> {} & <^o2,o3^> <> {} implies for A being Morphism of o1,o2
for B being Morphism of o2,o3 st A is mono & B is mono holds
B * A is mono )
assume that
A1: <^o1,o2^> <> {} and
A2: <^o2,o3^> <> {} ; ::_thesis: for A being Morphism of o1,o2
for B being Morphism of o2,o3 st A is mono & B is mono holds
B * A is mono
let A be Morphism of o1,o2; ::_thesis: for B being Morphism of o2,o3 st A is mono & B is mono holds
B * A is mono
let B be Morphism of o2,o3; ::_thesis: ( A is mono & B is mono implies B * A is mono )
assume that
A3: A is mono and
A4: B is mono ; ::_thesis: B * A is mono
let o be object of C; :: according to ALTCAT_3:def_7 ::_thesis: ( <^o,o1^> <> {} implies for B, C being Morphism of o,o1 st (B * A) * B = (B * A) * C holds
B = C )
assume A5: <^o,o1^> <> {} ; ::_thesis: for B, C being Morphism of o,o1 st (B * A) * B = (B * A) * C holds
B = C
then A6: <^o,o2^> <> {} by A1, ALTCAT_1:def_2;
let M1, M2 be Morphism of o,o1; ::_thesis: ( (B * A) * M1 = (B * A) * M2 implies M1 = M2 )
assume A7: (B * A) * M1 = (B * A) * M2 ; ::_thesis: M1 = M2
( (B * A) * M1 = B * (A * M1) & (B * A) * M2 = B * (A * M2) ) by A1, A2, A5, ALTCAT_1:21;
then A * M1 = A * M2 by A4, A7, A6, Def7;
hence M1 = M2 by A3, A5, Def7; ::_thesis: verum
end;
theorem Th10: :: ALTCAT_3:10
for C being non empty transitive associative AltCatStr
for o1, o2, o3 being object of C st <^o1,o2^> <> {} & <^o2,o3^> <> {} holds
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st A is epi & B is epi holds
B * A is epi
proof
let C be non empty transitive associative AltCatStr ; ::_thesis: for o1, o2, o3 being object of C st <^o1,o2^> <> {} & <^o2,o3^> <> {} holds
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st A is epi & B is epi holds
B * A is epi
let o1, o2, o3 be object of C; ::_thesis: ( <^o1,o2^> <> {} & <^o2,o3^> <> {} implies for A being Morphism of o1,o2
for B being Morphism of o2,o3 st A is epi & B is epi holds
B * A is epi )
assume that
A1: <^o1,o2^> <> {} and
A2: <^o2,o3^> <> {} ; ::_thesis: for A being Morphism of o1,o2
for B being Morphism of o2,o3 st A is epi & B is epi holds
B * A is epi
let A be Morphism of o1,o2; ::_thesis: for B being Morphism of o2,o3 st A is epi & B is epi holds
B * A is epi
let B be Morphism of o2,o3; ::_thesis: ( A is epi & B is epi implies B * A is epi )
assume that
A3: A is epi and
A4: B is epi ; ::_thesis: B * A is epi
let o be object of C; :: according to ALTCAT_3:def_8 ::_thesis: ( <^o3,o^> <> {} implies for B, C being Morphism of o3,o st B * (B * A) = C * (B * A) holds
B = C )
assume A5: <^o3,o^> <> {} ; ::_thesis: for B, C being Morphism of o3,o st B * (B * A) = C * (B * A) holds
B = C
then A6: <^o2,o^> <> {} by A2, ALTCAT_1:def_2;
let M1, M2 be Morphism of o3,o; ::_thesis: ( M1 * (B * A) = M2 * (B * A) implies M1 = M2 )
assume A7: M1 * (B * A) = M2 * (B * A) ; ::_thesis: M1 = M2
( M1 * (B * A) = (M1 * B) * A & M2 * (B * A) = (M2 * B) * A ) by A1, A2, A5, ALTCAT_1:21;
then M1 * B = M2 * B by A3, A7, A6, Def8;
hence M1 = M2 by A4, A5, Def8; ::_thesis: verum
end;
theorem :: ALTCAT_3:11
for C being non empty transitive associative AltCatStr
for o1, o2, o3 being object of C st <^o1,o2^> <> {} & <^o2,o3^> <> {} holds
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st B * A is mono holds
A is mono
proof
let C be non empty transitive associative AltCatStr ; ::_thesis: for o1, o2, o3 being object of C st <^o1,o2^> <> {} & <^o2,o3^> <> {} holds
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st B * A is mono holds
A is mono
let o1, o2, o3 be object of C; ::_thesis: ( <^o1,o2^> <> {} & <^o2,o3^> <> {} implies for A being Morphism of o1,o2
for B being Morphism of o2,o3 st B * A is mono holds
A is mono )
assume A1: ( <^o1,o2^> <> {} & <^o2,o3^> <> {} ) ; ::_thesis: for A being Morphism of o1,o2
for B being Morphism of o2,o3 st B * A is mono holds
A is mono
let A be Morphism of o1,o2; ::_thesis: for B being Morphism of o2,o3 st B * A is mono holds
A is mono
let B be Morphism of o2,o3; ::_thesis: ( B * A is mono implies A is mono )
assume A2: B * A is mono ; ::_thesis: A is mono
let o be object of C; :: according to ALTCAT_3:def_7 ::_thesis: ( <^o,o1^> <> {} implies for B, C being Morphism of o,o1 st A * B = A * C holds
B = C )
assume A3: <^o,o1^> <> {} ; ::_thesis: for B, C being Morphism of o,o1 st A * B = A * C holds
B = C
let M1, M2 be Morphism of o,o1; ::_thesis: ( A * M1 = A * M2 implies M1 = M2 )
assume A4: A * M1 = A * M2 ; ::_thesis: M1 = M2
( (B * A) * M1 = B * (A * M1) & (B * A) * M2 = B * (A * M2) ) by A1, A3, ALTCAT_1:21;
hence M1 = M2 by A2, A3, A4, Def7; ::_thesis: verum
end;
theorem :: ALTCAT_3:12
for C being non empty transitive associative AltCatStr
for o1, o2, o3 being object of C st <^o1,o2^> <> {} & <^o2,o3^> <> {} holds
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st B * A is epi holds
B is epi
proof
let C be non empty transitive associative AltCatStr ; ::_thesis: for o1, o2, o3 being object of C st <^o1,o2^> <> {} & <^o2,o3^> <> {} holds
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st B * A is epi holds
B is epi
let o1, o2, o3 be object of C; ::_thesis: ( <^o1,o2^> <> {} & <^o2,o3^> <> {} implies for A being Morphism of o1,o2
for B being Morphism of o2,o3 st B * A is epi holds
B is epi )
assume A1: ( <^o1,o2^> <> {} & <^o2,o3^> <> {} ) ; ::_thesis: for A being Morphism of o1,o2
for B being Morphism of o2,o3 st B * A is epi holds
B is epi
let A be Morphism of o1,o2; ::_thesis: for B being Morphism of o2,o3 st B * A is epi holds
B is epi
let B be Morphism of o2,o3; ::_thesis: ( B * A is epi implies B is epi )
assume A2: B * A is epi ; ::_thesis: B is epi
let o be object of C; :: according to ALTCAT_3:def_8 ::_thesis: ( <^o3,o^> <> {} implies for B, C being Morphism of o3,o st B * B = C * B holds
B = C )
assume A3: <^o3,o^> <> {} ; ::_thesis: for B, C being Morphism of o3,o st B * B = C * B holds
B = C
let M1, M2 be Morphism of o3,o; ::_thesis: ( M1 * B = M2 * B implies M1 = M2 )
assume A4: M1 * B = M2 * B ; ::_thesis: M1 = M2
( (M1 * B) * A = M1 * (B * A) & (M2 * B) * A = M2 * (B * A) ) by A1, A3, ALTCAT_1:21;
hence M1 = M2 by A2, A3, A4, Def8; ::_thesis: verum
end;
Lm1: now__::_thesis:_for_C_being_non_empty_with_units_AltCatStr_
for_a_being_object_of_C_holds_
(_idm_a_is_epi_&_idm_a_is_mono_)
let C be non empty with_units AltCatStr ; ::_thesis: for a being object of C holds
( idm a is epi & idm a is mono )
let a be object of C; ::_thesis: ( idm a is epi & idm a is mono )
thus idm a is epi ::_thesis: idm a is mono
proof
let o be object of C; :: according to ALTCAT_3:def_8 ::_thesis: ( <^a,o^> <> {} implies for B, C being Morphism of a,o st B * (idm a) = C * (idm a) holds
B = C )
assume A1: <^a,o^> <> {} ; ::_thesis: for B, C being Morphism of a,o st B * (idm a) = C * (idm a) holds
B = C
let B, C be Morphism of a,o; ::_thesis: ( B * (idm a) = C * (idm a) implies B = C )
assume A2: B * (idm a) = C * (idm a) ; ::_thesis: B = C
thus B = B * (idm a) by A1, ALTCAT_1:def_17
.= C by A1, A2, ALTCAT_1:def_17 ; ::_thesis: verum
end;
thus idm a is mono ::_thesis: verum
proof
let o be object of C; :: according to ALTCAT_3:def_7 ::_thesis: ( <^o,a^> <> {} implies for B, C being Morphism of o,a st (idm a) * B = (idm a) * C holds
B = C )
assume A3: <^o,a^> <> {} ; ::_thesis: for B, C being Morphism of o,a st (idm a) * B = (idm a) * C holds
B = C
let B, C be Morphism of o,a; ::_thesis: ( (idm a) * B = (idm a) * C implies B = C )
assume A4: (idm a) * B = (idm a) * C ; ::_thesis: B = C
thus B = (idm a) * B by A3, ALTCAT_1:20
.= C by A3, A4, ALTCAT_1:20 ; ::_thesis: verum
end;
end;
theorem :: ALTCAT_3:13
for X being non empty set
for o1, o2 being object of (EnsCat X) st <^o1,o2^> <> {} holds
for A being Morphism of o1,o2
for F being Function of o1,o2 st F = A holds
( A is mono iff F is one-to-one )
proof
let X be non empty set ; ::_thesis: for o1, o2 being object of (EnsCat X) st <^o1,o2^> <> {} holds
for A being Morphism of o1,o2
for F being Function of o1,o2 st F = A holds
( A is mono iff F is one-to-one )
let o1, o2 be object of (EnsCat X); ::_thesis: ( <^o1,o2^> <> {} implies for A being Morphism of o1,o2
for F being Function of o1,o2 st F = A holds
( A is mono iff F is one-to-one ) )
assume A1: <^o1,o2^> <> {} ; ::_thesis: for A being Morphism of o1,o2
for F being Function of o1,o2 st F = A holds
( A is mono iff F is one-to-one )
let A be Morphism of o1,o2; ::_thesis: for F being Function of o1,o2 st F = A holds
( A is mono iff F is one-to-one )
let F be Function of o1,o2; ::_thesis: ( F = A implies ( A is mono iff F is one-to-one ) )
assume A2: F = A ; ::_thesis: ( A is mono iff F is one-to-one )
percases ( o2 <> {} or o2 = {} ) ;
suppose o2 <> {} ; ::_thesis: ( A is mono iff F is one-to-one )
then A3: dom F = o1 by FUNCT_2:def_1;
thus ( A is mono implies F is one-to-one ) ::_thesis: ( F is one-to-one implies A is mono )
proof
set o = o1;
assume A4: A is mono ; ::_thesis: F is one-to-one
assume not F is one-to-one ; ::_thesis: contradiction
then consider x1, x2 being set such that
A5: x1 in dom F and
A6: x2 in dom F and
A7: F . x1 = F . x2 and
A8: x1 <> x2 by FUNCT_1:def_4;
set C = o1 --> x2;
set B = o1 --> x1;
A9: dom (o1 --> x2) = o1 by FUNCOP_1:13;
A10: rng (o1 --> x2) c= o1
proof
let y be set ; :: according to TARSKI:def_3 ::_thesis: ( not y in rng (o1 --> x2) or y in o1 )
assume y in rng (o1 --> x2) ; ::_thesis: y in o1
then ex x being set st
( x in dom (o1 --> x2) & (o1 --> x2) . x = y ) by FUNCT_1:def_3;
hence y in o1 by A3, A6, A9, FUNCOP_1:7; ::_thesis: verum
end;
then A11: dom (F * (o1 --> x2)) = o1 by A3, A9, RELAT_1:27;
o1 --> x2 in Funcs (o1,o1) by A9, A10, FUNCT_2:def_2;
then reconsider C1 = o1 --> x2 as Morphism of o1,o1 by ALTCAT_1:def_14;
set o9 = the Element of o1;
A12: <^o1,o1^> <> {} by ALTCAT_1:19;
(o1 --> x1) . the Element of o1 = x1 by A3, A5, FUNCOP_1:7;
then A13: (o1 --> x1) . the Element of o1 <> (o1 --> x2) . the Element of o1 by A3, A5, A8, FUNCOP_1:7;
A14: dom (o1 --> x1) = o1 by FUNCOP_1:13;
A15: rng (o1 --> x1) c= o1
proof
let y be set ; :: according to TARSKI:def_3 ::_thesis: ( not y in rng (o1 --> x1) or y in o1 )
assume y in rng (o1 --> x1) ; ::_thesis: y in o1
then ex x being set st
( x in dom (o1 --> x1) & (o1 --> x1) . x = y ) by FUNCT_1:def_3;
hence y in o1 by A3, A5, A14, FUNCOP_1:7; ::_thesis: verum
end;
then o1 --> x1 in Funcs (o1,o1) by A14, FUNCT_2:def_2;
then reconsider B1 = o1 --> x1 as Morphism of o1,o1 by ALTCAT_1:def_14;
A16: dom (F * (o1 --> x1)) = o1 by A3, A14, A15, RELAT_1:27;
now__::_thesis:_for_z_being_set_st_z_in_o1_holds_
(F_*_(o1_-->_x1))_._z_=_(F_*_(o1_-->_x2))_._z
let z be set ; ::_thesis: ( z in o1 implies (F * (o1 --> x1)) . z = (F * (o1 --> x2)) . z )
assume A17: z in o1 ; ::_thesis: (F * (o1 --> x1)) . z = (F * (o1 --> x2)) . z
hence (F * (o1 --> x1)) . z = F . ((o1 --> x1) . z) by A16, FUNCT_1:12
.= F . x2 by A7, A17, FUNCOP_1:7
.= F . ((o1 --> x2) . z) by A17, FUNCOP_1:7
.= (F * (o1 --> x2)) . z by A11, A17, FUNCT_1:12 ;
::_thesis: verum
end;
then F * (o1 --> x1) = F * (o1 --> x2) by A16, A11, FUNCT_1:2;
then A * B1 = F * (o1 --> x2) by A1, A2, A12, ALTCAT_1:16
.= A * C1 by A1, A2, A12, ALTCAT_1:16 ;
hence contradiction by A4, A12, A13, Def7; ::_thesis: verum
end;
thus ( F is one-to-one implies A is mono ) ::_thesis: verum
proof
assume A18: F is one-to-one ; ::_thesis: A is mono
let o be object of (EnsCat X); :: according to ALTCAT_3:def_7 ::_thesis: ( <^o,o1^> <> {} implies for B, C being Morphism of o,o1 st A * B = A * C holds
B = C )
assume A19: <^o,o1^> <> {} ; ::_thesis: for B, C being Morphism of o,o1 st A * B = A * C holds
B = C
then A20: <^o,o2^> <> {} by A1, ALTCAT_1:def_2;
let B, C be Morphism of o,o1; ::_thesis: ( A * B = A * C implies B = C )
A21: <^o,o1^> = Funcs (o,o1) by ALTCAT_1:def_14;
then consider B1 being Function such that
A22: B1 = B and
A23: dom B1 = o and
A24: rng B1 c= o1 by A19, FUNCT_2:def_2;
consider C1 being Function such that
A25: C1 = C and
A26: dom C1 = o and
A27: rng C1 c= o1 by A19, A21, FUNCT_2:def_2;
assume A * B = A * C ; ::_thesis: B = C
then A28: F * B1 = A * C by A1, A2, A19, A22, A20, ALTCAT_1:16
.= F * C1 by A1, A2, A19, A25, A20, ALTCAT_1:16 ;
now__::_thesis:_for_z_being_set_st_z_in_o_holds_
B1_._z_=_C1_._z
let z be set ; ::_thesis: ( z in o implies B1 . z = C1 . z )
assume A29: z in o ; ::_thesis: B1 . z = C1 . z
then F . (B1 . z) = (F * B1) . z by A23, FUNCT_1:13;
then A30: F . (B1 . z) = F . (C1 . z) by A26, A28, A29, FUNCT_1:13;
( B1 . z in rng B1 & C1 . z in rng C1 ) by A23, A26, A29, FUNCT_1:def_3;
hence B1 . z = C1 . z by A3, A18, A24, A27, A30, FUNCT_1:def_4; ::_thesis: verum
end;
hence B = C by A22, A23, A25, A26, FUNCT_1:2; ::_thesis: verum
end;
end;
supposeA31: o2 = {} ; ::_thesis: ( A is mono iff F is one-to-one )
then F = {} ;
hence ( A is mono implies F is one-to-one ) ; ::_thesis: ( F is one-to-one implies A is mono )
thus ( F is one-to-one implies A is mono ) ::_thesis: verum
proof
set x = the Element of Funcs (o1,o2);
assume F is one-to-one ; ::_thesis: A is mono
let o be object of (EnsCat X); :: according to ALTCAT_3:def_7 ::_thesis: ( <^o,o1^> <> {} implies for B, C being Morphism of o,o1 st A * B = A * C holds
B = C )
assume A32: <^o,o1^> <> {} ; ::_thesis: for B, C being Morphism of o,o1 st A * B = A * C holds
B = C
<^o1,o2^> = Funcs (o1,o2) by ALTCAT_1:def_14;
then consider f being Function such that
f = the Element of Funcs (o1,o2) and
A33: dom f = o1 and
A34: rng f c= o2 by A1, FUNCT_2:def_2;
let B, C be Morphism of o,o1; ::_thesis: ( A * B = A * C implies B = C )
A35: <^o,o1^> = Funcs (o,o1) by ALTCAT_1:def_14;
then consider B1 being Function such that
A36: B1 = B and
A37: dom B1 = o and
A38: rng B1 c= o1 by A32, FUNCT_2:def_2;
rng f = {} by A31, A34, XBOOLE_1:3;
then dom f = {} by RELAT_1:42;
then A39: rng B1 = {} by A38, A33, XBOOLE_1:3;
then A40: dom B1 = {} by RELAT_1:42;
assume A * B = A * C ; ::_thesis: B = C
consider C1 being Function such that
A41: C1 = C and
A42: dom C1 = o and
rng C1 c= o1 by A32, A35, FUNCT_2:def_2;
B1 = {} by A39, RELAT_1:41
.= C1 by A37, A42, A40, RELAT_1:41 ;
hence B = C by A36, A41; ::_thesis: verum
end;
end;
end;
end;
theorem :: ALTCAT_3:14
for X being non empty with_non-empty_elements set
for o1, o2 being object of (EnsCat X) st <^o1,o2^> <> {} holds
for A being Morphism of o1,o2
for F being Function of o1,o2 st F = A holds
( A is epi iff F is onto )
proof
let X be non empty with_non-empty_elements set ; ::_thesis: for o1, o2 being object of (EnsCat X) st <^o1,o2^> <> {} holds
for A being Morphism of o1,o2
for F being Function of o1,o2 st F = A holds
( A is epi iff F is onto )
let o1, o2 be object of (EnsCat X); ::_thesis: ( <^o1,o2^> <> {} implies for A being Morphism of o1,o2
for F being Function of o1,o2 st F = A holds
( A is epi iff F is onto ) )
assume A1: <^o1,o2^> <> {} ; ::_thesis: for A being Morphism of o1,o2
for F being Function of o1,o2 st F = A holds
( A is epi iff F is onto )
let A be Morphism of o1,o2; ::_thesis: for F being Function of o1,o2 st F = A holds
( A is epi iff F is onto )
let F be Function of o1,o2; ::_thesis: ( F = A implies ( A is epi iff F is onto ) )
assume A2: F = A ; ::_thesis: ( A is epi iff F is onto )
percases ( for x being set st x in X holds
x is trivial or ex x being set st
( x in X & not x is trivial ) ) ;
supposeA3: for x being set st x in X holds
x is trivial ; ::_thesis: ( A is epi iff F is onto )
thus ( A is epi implies F is onto ) ::_thesis: ( F is onto implies A is epi )
proof
assume A is epi ; ::_thesis: F is onto
now__::_thesis:_F_is_onto
percases ( o2 = {} or o2 <> {} ) ;
supposeA4: o2 = {} ; ::_thesis: F is onto
then F = {} ;
hence F is onto by A4, FUNCT_2:def_3, RELAT_1:38; ::_thesis: verum
end;
supposeA5: o2 <> {} ; ::_thesis: F is onto
A6: o1 is Element of X by ALTCAT_1:def_14;
then o1 is trivial by A3;
then consider z being set such that
A7: o1 = {z} by A6, ZFMISC_1:131;
dom F = {z} by A5, A7, FUNCT_2:def_1;
then A8: rng F <> {} by RELAT_1:42;
o2 is Element of X by ALTCAT_1:def_14;
then o2 is trivial by A3;
then consider y being set such that
A9: o2 = {y} by A5, ZFMISC_1:131;
rng F c= {y} by A9, RELAT_1:def_19;
then rng F = {y} by A8, ZFMISC_1:33;
hence F is onto by A9, FUNCT_2:def_3; ::_thesis: verum
end;
end;
end;
hence F is onto ; ::_thesis: verum
end;
thus ( F is onto implies A is epi ) ::_thesis: verum
proof
assume A10: F is onto ; ::_thesis: A is epi
let o be object of (EnsCat X); :: according to ALTCAT_3:def_8 ::_thesis: ( <^o2,o^> <> {} implies for B, C being Morphism of o2,o st B * A = C * A holds
B = C )
assume A11: <^o2,o^> <> {} ; ::_thesis: for B, C being Morphism of o2,o st B * A = C * A holds
B = C
then A12: <^o1,o^> <> {} by A1, ALTCAT_1:def_2;
let B, C be Morphism of o2,o; ::_thesis: ( B * A = C * A implies B = C )
A13: <^o2,o^> = Funcs (o2,o) by ALTCAT_1:def_14;
then consider B1 being Function such that
A14: B1 = B and
A15: dom B1 = o2 and
rng B1 c= o by A11, FUNCT_2:def_2;
consider C1 being Function such that
A16: C1 = C and
A17: dom C1 = o2 and
rng C1 c= o by A11, A13, FUNCT_2:def_2;
assume B * A = C * A ; ::_thesis: B = C
then A18: B1 * F = C * A by A1, A2, A11, A14, A12, ALTCAT_1:16
.= C1 * F by A1, A2, A11, A16, A12, ALTCAT_1:16 ;
now__::_thesis:_not_B1_<>_C1
assume B1 <> C1 ; ::_thesis: contradiction
then consider z being set such that
A19: z in o2 and
A20: B1 . z <> C1 . z by A15, A17, FUNCT_1:2;
z in rng F by A10, A19, FUNCT_2:def_3;
then consider x being set such that
A21: x in dom F and
A22: F . x = z by FUNCT_1:def_3;
B1 . (F . x) = (B1 * F) . x by A21, FUNCT_1:13;
hence contradiction by A18, A20, A21, A22, FUNCT_1:13; ::_thesis: verum
end;
hence B = C by A14, A16; ::_thesis: verum
end;
end;
supposeA23: ex x being set st
( x in X & not x is trivial ) ; ::_thesis: ( A is epi iff F is onto )
now__::_thesis:_(_(_A_is_epi_implies_F_is_onto_)_&_(_F_is_onto_implies_A_is_epi_)_)
percases ( o2 <> {} or o2 = {} ) ;
supposeA24: o2 <> {} ; ::_thesis: ( ( A is epi implies F is onto ) & ( F is onto implies A is epi ) )
consider o being set such that
A25: o in X and
A26: not o is trivial by A23;
reconsider o = o as object of (EnsCat X) by A25, ALTCAT_1:def_14;
A27: dom F = o1 by A24, FUNCT_2:def_1;
thus ( A is epi implies F is onto ) ::_thesis: ( F is onto implies A is epi )
proof
set k = the Element of o;
A28: rng F c= o2 by RELAT_1:def_19;
reconsider ok = o \ { the Element of o} as non empty set by A26, REALSET1:3;
assume that
A29: A is epi and
A30: not F is onto ; ::_thesis: contradiction
rng F <> o2 by A30, FUNCT_2:def_3;
then not o2 c= rng F by A28, XBOOLE_0:def_10;
then consider y being set such that
A31: y in o2 and
A32: not y in rng F by TARSKI:def_3;
set C = o2 --> the Element of o;
A33: dom (o2 --> the Element of o) = o2 by FUNCOP_1:13;
A34: o <> {} by A25;
then A35: the Element of o in o ;
rng (o2 --> the Element of o) c= o
proof
let y be set ; :: according to TARSKI:def_3 ::_thesis: ( not y in rng (o2 --> the Element of o) or y in o )
assume y in rng (o2 --> the Element of o) ; ::_thesis: y in o
then ex x being set st
( x in dom (o2 --> the Element of o) & (o2 --> the Element of o) . x = y ) by FUNCT_1:def_3;
hence y in o by A35, A33, FUNCOP_1:7; ::_thesis: verum
end;
then o2 --> the Element of o in Funcs (o2,o) by A33, FUNCT_2:def_2;
then reconsider C1 = o2 --> the Element of o as Morphism of o2,o by ALTCAT_1:def_14;
set l = the Element of ok;
A36: not the Element of ok in { the Element of o} by XBOOLE_0:def_5;
reconsider l = the Element of ok as Element of o by XBOOLE_0:def_5;
A37: the Element of o <> l by A36, TARSKI:def_1;
deffunc H1( set ) -> Element of o = IFEQ ($1,y,l, the Element of o);
consider B being Function such that
A38: dom B = o2 and
A39: for x being set st x in o2 holds
B . x = H1(x) from FUNCT_1:sch_3();
A40: dom (B * F) = o1 by A27, A28, A38, RELAT_1:27;
A41: rng B c= o
proof
let y1 be set ; :: according to TARSKI:def_3 ::_thesis: ( not y1 in rng B or y1 in o )
assume y1 in rng B ; ::_thesis: y1 in o
then consider x being set such that
A42: ( x in dom B & B . x = y1 ) by FUNCT_1:def_3;
percases ( x = y or x <> y ) ;
supposeA43: x = y ; ::_thesis: y1 in o
y1 = IFEQ (x,y,l, the Element of o) by A38, A39, A42
.= l by A43, FUNCOP_1:def_8 ;
hence y1 in o by A34; ::_thesis: verum
end;
supposeA44: x <> y ; ::_thesis: y1 in o
y1 = IFEQ (x,y,l, the Element of o) by A38, A39, A42
.= the Element of o by A44, FUNCOP_1:def_8 ;
hence y1 in o by A34; ::_thesis: verum
end;
end;
end;
then A45: B in Funcs (o2,o) by A38, FUNCT_2:def_2;
then A46: B in <^o2,o^> by ALTCAT_1:def_14;
reconsider B1 = B as Morphism of o2,o by A45, ALTCAT_1:def_14;
for z being set st z in rng (B * F) holds
z in rng B by FUNCT_1:14;
then rng (B * F) c= rng B by TARSKI:def_3;
then rng (B * F) c= o by A41, XBOOLE_1:1;
then B * F in Funcs (o1,o) by A40, FUNCT_2:def_2;
then A47: B * F in <^o1,o^> by ALTCAT_1:def_14;
B . y = IFEQ (y,y,l, the Element of o) by A31, A39
.= l by FUNCOP_1:def_8 ;
then A48: not B = o2 --> the Element of o by A31, A37, FUNCOP_1:7;
A49: dom ((o2 --> the Element of o) * F) = o1 by A27, A28, A33, RELAT_1:27;
now__::_thesis:_for_z_being_set_st_z_in_o1_holds_
(B_*_F)_._z_=_((o2_-->_the_Element_of_o)_*_F)_._z
let z be set ; ::_thesis: ( z in o1 implies (B * F) . z = ((o2 --> the Element of o) * F) . z )
assume A50: z in o1 ; ::_thesis: (B * F) . z = ((o2 --> the Element of o) * F) . z
then A51: F . z in rng F by A27, FUNCT_1:def_3;
then A52: B . (F . z) = IFEQ ((F . z),y,l, the Element of o) by A28, A39
.= the Element of o by A32, A51, FUNCOP_1:def_8 ;
thus (B * F) . z = B . (F . z) by A40, A50, FUNCT_1:12
.= (o2 --> the Element of o) . (F . z) by A28, A51, A52, FUNCOP_1:7
.= ((o2 --> the Element of o) * F) . z by A49, A50, FUNCT_1:12 ; ::_thesis: verum
end;
then B * F = (o2 --> the Element of o) * F by A40, A49, FUNCT_1:2;
then B1 * A = (o2 --> the Element of o) * F by A1, A2, A46, A47, ALTCAT_1:16
.= C1 * A by A1, A2, A46, A47, ALTCAT_1:16 ;
hence contradiction by A29, A48, A46, Def8; ::_thesis: verum
end;
thus ( F is onto implies A is epi ) ::_thesis: verum
proof
assume A53: F is onto ; ::_thesis: A is epi
let o be object of (EnsCat X); :: according to ALTCAT_3:def_8 ::_thesis: ( <^o2,o^> <> {} implies for B, C being Morphism of o2,o st B * A = C * A holds
B = C )
assume A54: <^o2,o^> <> {} ; ::_thesis: for B, C being Morphism of o2,o st B * A = C * A holds
B = C
then A55: <^o1,o^> <> {} by A1, ALTCAT_1:def_2;
let B, C be Morphism of o2,o; ::_thesis: ( B * A = C * A implies B = C )
A56: <^o2,o^> = Funcs (o2,o) by ALTCAT_1:def_14;
then consider B1 being Function such that
A57: B1 = B and
A58: dom B1 = o2 and
rng B1 c= o by A54, FUNCT_2:def_2;
consider C1 being Function such that
A59: C1 = C and
A60: dom C1 = o2 and
rng C1 c= o by A54, A56, FUNCT_2:def_2;
assume B * A = C * A ; ::_thesis: B = C
then A61: B1 * F = C * A by A1, A2, A54, A57, A55, ALTCAT_1:16
.= C1 * F by A1, A2, A54, A59, A55, ALTCAT_1:16 ;
now__::_thesis:_not_B1_<>_C1
assume B1 <> C1 ; ::_thesis: contradiction
then consider z being set such that
A62: z in o2 and
A63: B1 . z <> C1 . z by A58, A60, FUNCT_1:2;
z in rng F by A53, A62, FUNCT_2:def_3;
then consider x being set such that
A64: x in dom F and
A65: F . x = z by FUNCT_1:def_3;
B1 . (F . x) = (B1 * F) . x by A64, FUNCT_1:13;
hence contradiction by A61, A63, A64, A65, FUNCT_1:13; ::_thesis: verum
end;
hence B = C by A57, A59; ::_thesis: verum
end;
end;
supposeA66: o2 = {} ; ::_thesis: ( ( A is epi implies F is onto ) & ( F is onto implies A is epi ) )
then F = {} ;
hence ( A is epi implies F is onto ) by A66, FUNCT_2:def_3, RELAT_1:38; ::_thesis: ( F is onto implies A is epi )
thus ( F is onto implies A is epi ) ::_thesis: verum
proof
assume F is onto ; ::_thesis: A is epi
let o be object of (EnsCat X); :: according to ALTCAT_3:def_8 ::_thesis: ( <^o2,o^> <> {} implies for B, C being Morphism of o2,o st B * A = C * A holds
B = C )
assume A67: <^o2,o^> <> {} ; ::_thesis: for B, C being Morphism of o2,o st B * A = C * A holds
B = C
let B, C be Morphism of o2,o; ::_thesis: ( B * A = C * A implies B = C )
A68: <^o2,o^> = Funcs (o2,o) by ALTCAT_1:def_14;
then consider B1 being Function such that
A69: B1 = B and
A70: dom B1 = o2 and
rng B1 c= o by A67, FUNCT_2:def_2;
A71: ex C1 being Function st
( C1 = C & dom C1 = o2 & rng C1 c= o ) by A67, A68, FUNCT_2:def_2;
assume B * A = C * A ; ::_thesis: B = C
B1 = {} by A66, A70, RELAT_1:41;
hence B = C by A66, A69, A71, RELAT_1:41; ::_thesis: verum
end;
end;
end;
end;
hence ( A is epi iff F is onto ) ; ::_thesis: verum
end;
end;
end;
theorem Th15: :: ALTCAT_3:15
for C being category
for o1, o2 being object of C st <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
for A being Morphism of o1,o2 st A is retraction holds
A is epi
proof
let C be category; ::_thesis: for o1, o2 being object of C st <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
for A being Morphism of o1,o2 st A is retraction holds
A is epi
let o1, o2 be object of C; ::_thesis: ( <^o1,o2^> <> {} & <^o2,o1^> <> {} implies for A being Morphism of o1,o2 st A is retraction holds
A is epi )
assume A1: ( <^o1,o2^> <> {} & <^o2,o1^> <> {} ) ; ::_thesis: for A being Morphism of o1,o2 st A is retraction holds
A is epi
let A be Morphism of o1,o2; ::_thesis: ( A is retraction implies A is epi )
assume A is retraction ; ::_thesis: A is epi
then consider R being Morphism of o2,o1 such that
A2: R is_right_inverse_of A by Def2;
let o be object of C; :: according to ALTCAT_3:def_8 ::_thesis: ( <^o2,o^> <> {} implies for B, C being Morphism of o2,o st B * A = C * A holds
B = C )
assume A3: <^o2,o^> <> {} ; ::_thesis: for B, C being Morphism of o2,o st B * A = C * A holds
B = C
let B, C be Morphism of o2,o; ::_thesis: ( B * A = C * A implies B = C )
assume A4: B * A = C * A ; ::_thesis: B = C
thus B = B * (idm o2) by A3, ALTCAT_1:def_17
.= B * (A * R) by A2, Def1
.= (C * A) * R by A1, A3, A4, ALTCAT_1:21
.= C * (A * R) by A1, A3, ALTCAT_1:21
.= C * (idm o2) by A2, Def1
.= C by A3, ALTCAT_1:def_17 ; ::_thesis: verum
end;
theorem Th16: :: ALTCAT_3:16
for C being category
for o1, o2 being object of C st <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
for A being Morphism of o1,o2 st A is coretraction holds
A is mono
proof
let C be category; ::_thesis: for o1, o2 being object of C st <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
for A being Morphism of o1,o2 st A is coretraction holds
A is mono
let o1, o2 be object of C; ::_thesis: ( <^o1,o2^> <> {} & <^o2,o1^> <> {} implies for A being Morphism of o1,o2 st A is coretraction holds
A is mono )
assume A1: ( <^o1,o2^> <> {} & <^o2,o1^> <> {} ) ; ::_thesis: for A being Morphism of o1,o2 st A is coretraction holds
A is mono
let A be Morphism of o1,o2; ::_thesis: ( A is coretraction implies A is mono )
assume A is coretraction ; ::_thesis: A is mono
then consider R being Morphism of o2,o1 such that
A2: R is_left_inverse_of A by Def3;
let o be object of C; :: according to ALTCAT_3:def_7 ::_thesis: ( <^o,o1^> <> {} implies for B, C being Morphism of o,o1 st A * B = A * C holds
B = C )
assume A3: <^o,o1^> <> {} ; ::_thesis: for B, C being Morphism of o,o1 st A * B = A * C holds
B = C
let B, C be Morphism of o,o1; ::_thesis: ( A * B = A * C implies B = C )
assume A4: A * B = A * C ; ::_thesis: B = C
thus B = (idm o1) * B by A3, ALTCAT_1:20
.= (R * A) * B by A2, Def1
.= R * (A * C) by A1, A3, A4, ALTCAT_1:21
.= (R * A) * C by A1, A3, ALTCAT_1:21
.= (idm o1) * C by A2, Def1
.= C by A3, ALTCAT_1:20 ; ::_thesis: verum
end;
theorem :: ALTCAT_3:17
for C being category
for o1, o2 being object of C st <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
for A being Morphism of o1,o2 st A is iso holds
( A is mono & A is epi )
proof
let C be category; ::_thesis: for o1, o2 being object of C st <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
for A being Morphism of o1,o2 st A is iso holds
( A is mono & A is epi )
let o1, o2 be object of C; ::_thesis: ( <^o1,o2^> <> {} & <^o2,o1^> <> {} implies for A being Morphism of o1,o2 st A is iso holds
( A is mono & A is epi ) )
assume A1: ( <^o1,o2^> <> {} & <^o2,o1^> <> {} ) ; ::_thesis: for A being Morphism of o1,o2 st A is iso holds
( A is mono & A is epi )
let A be Morphism of o1,o2; ::_thesis: ( A is iso implies ( A is mono & A is epi ) )
assume A is iso ; ::_thesis: ( A is mono & A is epi )
then A2: ( A is retraction & A is coretraction ) by A1, Th6;
A3: for o being object of C st <^o2,o^> <> {} holds
for B, C being Morphism of o2,o st B * A = C * A holds
B = C
proof
let o be object of C; ::_thesis: ( <^o2,o^> <> {} implies for B, C being Morphism of o2,o st B * A = C * A holds
B = C )
assume A4: <^o2,o^> <> {} ; ::_thesis: for B, C being Morphism of o2,o st B * A = C * A holds
B = C
let B, C be Morphism of o2,o; ::_thesis: ( B * A = C * A implies B = C )
assume B * A = C * A ; ::_thesis: B = C
then B * (A * (A ")) = (C * A) * (A ") by A1, A4, ALTCAT_1:21;
then B * (idm o2) = (C * A) * (A ") by A1, A2, Th2;
then B * (idm o2) = C * (A * (A ")) by A1, A4, ALTCAT_1:21;
then B * (idm o2) = C * (idm o2) by A1, A2, Th2;
then B = C * (idm o2) by A4, ALTCAT_1:def_17;
hence B = C by A4, ALTCAT_1:def_17; ::_thesis: verum
end;
for o being object of C st <^o,o1^> <> {} holds
for B, C being Morphism of o,o1 st A * B = A * C holds
B = C
proof
let o be object of C; ::_thesis: ( <^o,o1^> <> {} implies for B, C being Morphism of o,o1 st A * B = A * C holds
B = C )
assume A5: <^o,o1^> <> {} ; ::_thesis: for B, C being Morphism of o,o1 st A * B = A * C holds
B = C
let B, C be Morphism of o,o1; ::_thesis: ( A * B = A * C implies B = C )
assume A * B = A * C ; ::_thesis: B = C
then ((A ") * A) * B = (A ") * (A * C) by A1, A5, ALTCAT_1:21;
then (idm o1) * B = (A ") * (A * C) by A1, A2, Th2;
then (idm o1) * B = ((A ") * A) * C by A1, A5, ALTCAT_1:21;
then (idm o1) * B = (idm o1) * C by A1, A2, Th2;
then B = (idm o1) * C by A5, ALTCAT_1:20;
hence B = C by A5, ALTCAT_1:20; ::_thesis: verum
end;
hence ( A is mono & A is epi ) by A3, Def7, Def8; ::_thesis: verum
end;
theorem Th18: :: ALTCAT_3:18
for C being category
for o1, o2, o3 being object of C st <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} holds
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st A is retraction & B is retraction holds
B * A is retraction
proof
let C be category; ::_thesis: for o1, o2, o3 being object of C st <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} holds
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st A is retraction & B is retraction holds
B * A is retraction
let o1, o2, o3 be object of C; ::_thesis: ( <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} implies for A being Morphism of o1,o2
for B being Morphism of o2,o3 st A is retraction & B is retraction holds
B * A is retraction )
assume that
A1: <^o1,o2^> <> {} and
A2: <^o2,o3^> <> {} and
A3: <^o3,o1^> <> {} ; ::_thesis: for A being Morphism of o1,o2
for B being Morphism of o2,o3 st A is retraction & B is retraction holds
B * A is retraction
A4: <^o2,o1^> <> {} by A2, A3, ALTCAT_1:def_2;
A5: <^o3,o2^> <> {} by A1, A3, ALTCAT_1:def_2;
let A be Morphism of o1,o2; ::_thesis: for B being Morphism of o2,o3 st A is retraction & B is retraction holds
B * A is retraction
let B be Morphism of o2,o3; ::_thesis: ( A is retraction & B is retraction implies B * A is retraction )
assume that
A6: A is retraction and
A7: B is retraction ; ::_thesis: B * A is retraction
consider A1 being Morphism of o2,o1 such that
A8: A1 is_right_inverse_of A by A6, Def2;
consider B1 being Morphism of o3,o2 such that
A9: B1 is_right_inverse_of B by A7, Def2;
consider G being Morphism of o3,o1 such that
A10: G = A1 * B1 ;
take G ; :: according to ALTCAT_3:def_2 ::_thesis: G is_right_inverse_of B * A
(B * A) * G = B * (A * (A1 * B1)) by A1, A2, A3, A10, ALTCAT_1:21
.= B * ((A * A1) * B1) by A1, A4, A5, ALTCAT_1:21
.= B * ((idm o2) * B1) by A8, Def1
.= B * B1 by A5, ALTCAT_1:20
.= idm o3 by A9, Def1 ;
hence G is_right_inverse_of B * A by Def1; ::_thesis: verum
end;
theorem Th19: :: ALTCAT_3:19
for C being category
for o1, o2, o3 being object of C st <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} holds
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st A is coretraction & B is coretraction holds
B * A is coretraction
proof
let C be category; ::_thesis: for o1, o2, o3 being object of C st <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} holds
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st A is coretraction & B is coretraction holds
B * A is coretraction
let o1, o2, o3 be object of C; ::_thesis: ( <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} implies for A being Morphism of o1,o2
for B being Morphism of o2,o3 st A is coretraction & B is coretraction holds
B * A is coretraction )
assume that
A1: <^o1,o2^> <> {} and
A2: <^o2,o3^> <> {} and
A3: <^o3,o1^> <> {} ; ::_thesis: for A being Morphism of o1,o2
for B being Morphism of o2,o3 st A is coretraction & B is coretraction holds
B * A is coretraction
A4: <^o2,o1^> <> {} by A2, A3, ALTCAT_1:def_2;
A5: <^o3,o2^> <> {} by A1, A3, ALTCAT_1:def_2;
let A be Morphism of o1,o2; ::_thesis: for B being Morphism of o2,o3 st A is coretraction & B is coretraction holds
B * A is coretraction
let B be Morphism of o2,o3; ::_thesis: ( A is coretraction & B is coretraction implies B * A is coretraction )
assume that
A6: A is coretraction and
A7: B is coretraction ; ::_thesis: B * A is coretraction
consider A1 being Morphism of o2,o1 such that
A8: A1 is_left_inverse_of A by A6, Def3;
consider B1 being Morphism of o3,o2 such that
A9: B1 is_left_inverse_of B by A7, Def3;
consider G being Morphism of o3,o1 such that
A10: G = A1 * B1 ;
take G ; :: according to ALTCAT_3:def_3 ::_thesis: G is_left_inverse_of B * A
A11: <^o2,o2^> <> {} by ALTCAT_1:19;
G * (B * A) = ((A1 * B1) * B) * A by A1, A2, A3, A10, ALTCAT_1:21
.= (A1 * (B1 * B)) * A by A2, A4, A5, ALTCAT_1:21
.= (A1 * (idm o2)) * A by A9, Def1
.= A1 * ((idm o2) * A) by A1, A4, A11, ALTCAT_1:21
.= A1 * A by A1, ALTCAT_1:20
.= idm o1 by A8, Def1 ;
hence G is_left_inverse_of B * A by Def1; ::_thesis: verum
end;
theorem Th20: :: ALTCAT_3:20
for C being category
for o1, o2 being object of C
for A being Morphism of o1,o2 st A is retraction & A is mono & <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
A is iso
proof
let C be category; ::_thesis: for o1, o2 being object of C
for A being Morphism of o1,o2 st A is retraction & A is mono & <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
A is iso
let o1, o2 be object of C; ::_thesis: for A being Morphism of o1,o2 st A is retraction & A is mono & <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
A is iso
let A be Morphism of o1,o2; ::_thesis: ( A is retraction & A is mono & <^o1,o2^> <> {} & <^o2,o1^> <> {} implies A is iso )
assume that
A1: A is retraction and
A2: A is mono and
A3: <^o1,o2^> <> {} and
A4: <^o2,o1^> <> {} ; ::_thesis: A is iso
consider B being Morphism of o2,o1 such that
A5: B is_right_inverse_of A by A1, Def2;
(A * B) * A = (idm o2) * A by A5, Def1;
then A * (B * A) = (idm o2) * A by A3, A4, ALTCAT_1:21;
then A * (B * A) = A by A3, ALTCAT_1:20;
then A6: ( <^o1,o1^> <> {} & A * (B * A) = A * (idm o1) ) by A3, ALTCAT_1:19, ALTCAT_1:def_17;
then B * A = idm o1 by A2, Def7;
then A7: B is_left_inverse_of A by Def1;
then A8: A is coretraction by Def3;
then A9: A * (A ") = A * B by A1, A3, A4, A5, A7, Def4
.= idm o2 by A5, Def1 ;
(A ") * A = B * A by A1, A3, A4, A5, A7, A8, Def4
.= idm o1 by A2, A6, Def7 ;
hence A is iso by A9, Def5; ::_thesis: verum
end;
theorem :: ALTCAT_3:21
for C being category
for o1, o2 being object of C
for A being Morphism of o1,o2 st A is coretraction & A is epi & <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
A is iso
proof
let C be category; ::_thesis: for o1, o2 being object of C
for A being Morphism of o1,o2 st A is coretraction & A is epi & <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
A is iso
let o1, o2 be object of C; ::_thesis: for A being Morphism of o1,o2 st A is coretraction & A is epi & <^o1,o2^> <> {} & <^o2,o1^> <> {} holds
A is iso
let A be Morphism of o1,o2; ::_thesis: ( A is coretraction & A is epi & <^o1,o2^> <> {} & <^o2,o1^> <> {} implies A is iso )
assume that
A1: A is coretraction and
A2: A is epi and
A3: <^o1,o2^> <> {} and
A4: <^o2,o1^> <> {} ; ::_thesis: A is iso
consider B being Morphism of o2,o1 such that
A5: B is_left_inverse_of A by A1, Def3;
A * (B * A) = A * (idm o1) by A5, Def1;
then A * (B * A) = A by A3, ALTCAT_1:def_17;
then A * (B * A) = (idm o2) * A by A3, ALTCAT_1:20;
then A6: ( <^o2,o2^> <> {} & (A * B) * A = (idm o2) * A ) by A3, A4, ALTCAT_1:19, ALTCAT_1:21;
then A * B = idm o2 by A2, Def8;
then A7: B is_right_inverse_of A by Def1;
then A8: A is retraction by Def2;
then A9: (A ") * A = B * A by A1, A3, A4, A5, A7, Def4
.= idm o1 by A5, Def1 ;
A * (A ") = A * B by A1, A3, A4, A5, A7, A8, Def4
.= idm o2 by A2, A6, Def8 ;
hence A is iso by A9, Def5; ::_thesis: verum
end;
theorem :: ALTCAT_3:22
for C being category
for o1, o2, o3 being object of C
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} & B * A is retraction holds
B is retraction
proof
let C be category; ::_thesis: for o1, o2, o3 being object of C
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} & B * A is retraction holds
B is retraction
let o1, o2, o3 be object of C; ::_thesis: for A being Morphism of o1,o2
for B being Morphism of o2,o3 st <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} & B * A is retraction holds
B is retraction
let A be Morphism of o1,o2; ::_thesis: for B being Morphism of o2,o3 st <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} & B * A is retraction holds
B is retraction
let B be Morphism of o2,o3; ::_thesis: ( <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} & B * A is retraction implies B is retraction )
assume A1: ( <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} ) ; ::_thesis: ( not B * A is retraction or B is retraction )
assume B * A is retraction ; ::_thesis: B is retraction
then consider G being Morphism of o3,o1 such that
A2: G is_right_inverse_of B * A by Def2;
(B * A) * G = idm o3 by A2, Def1;
then B * (A * G) = idm o3 by A1, ALTCAT_1:21;
then A * G is_right_inverse_of B by Def1;
hence B is retraction by Def2; ::_thesis: verum
end;
theorem :: ALTCAT_3:23
for C being category
for o1, o2, o3 being object of C
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} & B * A is coretraction holds
A is coretraction
proof
let C be category; ::_thesis: for o1, o2, o3 being object of C
for A being Morphism of o1,o2
for B being Morphism of o2,o3 st <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} & B * A is coretraction holds
A is coretraction
let o1, o2, o3 be object of C; ::_thesis: for A being Morphism of o1,o2
for B being Morphism of o2,o3 st <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} & B * A is coretraction holds
A is coretraction
let A be Morphism of o1,o2; ::_thesis: for B being Morphism of o2,o3 st <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} & B * A is coretraction holds
A is coretraction
let B be Morphism of o2,o3; ::_thesis: ( <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} & B * A is coretraction implies A is coretraction )
assume A1: ( <^o1,o2^> <> {} & <^o2,o3^> <> {} & <^o3,o1^> <> {} ) ; ::_thesis: ( not B * A is coretraction or A is coretraction )
assume B * A is coretraction ; ::_thesis: A is coretraction
then consider G being Morphism of o3,o1 such that
A2: G is_left_inverse_of B * A by Def3;
A3: (G * B) * A = G * (B * A) by A1, ALTCAT_1:21;
G * (B * A) = idm o1 by A2, Def1;
then G * B is_left_inverse_of A by A3, Def1;
hence A is coretraction by Def3; ::_thesis: verum
end;
theorem :: ALTCAT_3:24
for C being category st ( for o1, o2 being object of C
for A1 being Morphism of o1,o2 holds A1 is retraction ) holds
for a, b being object of C
for A being Morphism of a,b st <^a,b^> <> {} & <^b,a^> <> {} holds
A is iso
proof
let C be category; ::_thesis: ( ( for o1, o2 being object of C
for A1 being Morphism of o1,o2 holds A1 is retraction ) implies for a, b being object of C
for A being Morphism of a,b st <^a,b^> <> {} & <^b,a^> <> {} holds
A is iso )
assume A1: for o1, o2 being object of C
for A1 being Morphism of o1,o2 holds A1 is retraction ; ::_thesis: for a, b being object of C
for A being Morphism of a,b st <^a,b^> <> {} & <^b,a^> <> {} holds
A is iso
thus for a, b being object of C
for A being Morphism of a,b st <^a,b^> <> {} & <^b,a^> <> {} holds
A is iso ::_thesis: verum
proof
let a, b be object of C; ::_thesis: for A being Morphism of a,b st <^a,b^> <> {} & <^b,a^> <> {} holds
A is iso
let A be Morphism of a,b; ::_thesis: ( <^a,b^> <> {} & <^b,a^> <> {} implies A is iso )
assume that
A2: <^a,b^> <> {} and
A3: <^b,a^> <> {} ; ::_thesis: A is iso
A4: A is retraction by A1;
A is coretraction
proof
consider A1 being Morphism of b,a such that
A5: A1 is_right_inverse_of A by A4, Def2;
A1 * (A * A1) = A1 * (idm b) by A5, Def1;
then A1 * (A * A1) = A1 by A3, ALTCAT_1:def_17;
then (A1 * A) * A1 = A1 by A2, A3, ALTCAT_1:21;
then A6: (A1 * A) * A1 = (idm a) * A1 by A3, ALTCAT_1:20;
( A1 is epi & <^a,a^> <> {} ) by A1, A2, A3, Th15, ALTCAT_1:19;
then A1 * A = idm a by A6, Def8;
then A1 is_left_inverse_of A by Def1;
hence A is coretraction by Def3; ::_thesis: verum
end;
hence A is iso by A2, A3, A4, Th6; ::_thesis: verum
end;
end;
registration
let C be non empty with_units AltCatStr ;
let o be object of C;
cluster retraction coretraction mono epi for Element of <^o,o^>;
existence
ex b1 being Morphism of o,o st
( b1 is mono & b1 is epi & b1 is retraction & b1 is coretraction )
proof
take idm o ; ::_thesis: ( idm o is mono & idm o is epi & idm o is retraction & idm o is coretraction )
thus ( idm o is mono & idm o is epi & idm o is retraction & idm o is coretraction ) by Lm1, Th1; ::_thesis: verum
end;
end;
registration
let C be category;
let o be object of C;
cluster retraction coretraction iso mono epi for Element of <^o,o^>;
existence
ex b1 being Morphism of o,o st
( b1 is mono & b1 is epi & b1 is iso & b1 is retraction & b1 is coretraction )
proof
take I = idm o; ::_thesis: ( I is mono & I is epi & I is iso & I is retraction & I is coretraction )
( <^o,o^> <> {} & I is retraction & I is coretraction ) by Th1, ALTCAT_1:19;
hence ( I is mono & I is epi & I is iso & I is retraction & I is coretraction ) by Th15, Th16, Th20; ::_thesis: verum
end;
end;
registration
let C be category;
let o be object of C;
let A, B be mono Morphism of o,o;
clusterA * B -> mono ;
coherence
A * B is mono
proof
<^o,o^> <> {} by ALTCAT_1:19;
hence A * B is mono by Th9; ::_thesis: verum
end;
end;
registration
let C be category;
let o be object of C;
let A, B be epi Morphism of o,o;
clusterA * B -> epi ;
coherence
A * B is epi
proof
<^o,o^> <> {} by ALTCAT_1:19;
hence A * B is epi by Th10; ::_thesis: verum
end;
end;
registration
let C be category;
let o be object of C;
let A, B be iso Morphism of o,o;
clusterA * B -> iso ;
coherence
A * B is iso
proof
<^o,o^> <> {} by ALTCAT_1:19;
hence A * B is iso by Th7; ::_thesis: verum
end;
end;
registration
let C be category;
let o be object of C;
let A, B be retraction Morphism of o,o;
clusterA * B -> retraction ;
coherence
A * B is retraction
proof
<^o,o^> <> {} by ALTCAT_1:19;
hence A * B is retraction by Th18; ::_thesis: verum
end;
end;
registration
let C be category;
let o be object of C;
let A, B be coretraction Morphism of o,o;
clusterA * B -> coretraction ;
coherence
A * B is coretraction
proof
<^o,o^> <> {} by ALTCAT_1:19;
hence A * B is coretraction by Th19; ::_thesis: verum
end;
end;
definition
let C be AltGraph ;
let o be object of C;
attro is initial means :Def9: :: ALTCAT_3:def 9
for o1 being object of C ex M being Morphism of o,o1 st
( M in <^o,o1^> & <^o,o1^> is trivial );
end;
:: deftheorem Def9 defines initial ALTCAT_3:def_9_:_
for C being AltGraph
for o being object of C holds
( o is initial iff for o1 being object of C ex M being Morphism of o,o1 st
( M in <^o,o1^> & <^o,o1^> is trivial ) );
theorem :: ALTCAT_3:25
for C being AltGraph
for o being object of C holds
( o is initial iff for o1 being object of C ex M being Morphism of o,o1 st
( M in <^o,o1^> & ( for M1 being Morphism of o,o1 st M1 in <^o,o1^> holds
M = M1 ) ) )
proof
let C be AltGraph ; ::_thesis: for o being object of C holds
( o is initial iff for o1 being object of C ex M being Morphism of o,o1 st
( M in <^o,o1^> & ( for M1 being Morphism of o,o1 st M1 in <^o,o1^> holds
M = M1 ) ) )
let o be object of C; ::_thesis: ( o is initial iff for o1 being object of C ex M being Morphism of o,o1 st
( M in <^o,o1^> & ( for M1 being Morphism of o,o1 st M1 in <^o,o1^> holds
M = M1 ) ) )
thus ( o is initial implies for o1 being object of C ex M being Morphism of o,o1 st
( M in <^o,o1^> & ( for M1 being Morphism of o,o1 st M1 in <^o,o1^> holds
M = M1 ) ) ) ::_thesis: ( ( for o1 being object of C ex M being Morphism of o,o1 st
( M in <^o,o1^> & ( for M1 being Morphism of o,o1 st M1 in <^o,o1^> holds
M = M1 ) ) ) implies o is initial )
proof
assume A1: o is initial ; ::_thesis: for o1 being object of C ex M being Morphism of o,o1 st
( M in <^o,o1^> & ( for M1 being Morphism of o,o1 st M1 in <^o,o1^> holds
M = M1 ) )
let o1 be object of C; ::_thesis: ex M being Morphism of o,o1 st
( M in <^o,o1^> & ( for M1 being Morphism of o,o1 st M1 in <^o,o1^> holds
M = M1 ) )
consider M being Morphism of o,o1 such that
A2: M in <^o,o1^> and
A3: <^o,o1^> is trivial by A1, Def9;
ex i being set st <^o,o1^> = {i} by A2, A3, ZFMISC_1:131;
then <^o,o1^> = {M} by TARSKI:def_1;
then for M1 being Morphism of o,o1 st M1 in <^o,o1^> holds
M = M1 by TARSKI:def_1;
hence ex M being Morphism of o,o1 st
( M in <^o,o1^> & ( for M1 being Morphism of o,o1 st M1 in <^o,o1^> holds
M = M1 ) ) by A2; ::_thesis: verum
end;
assume A4: for o1 being object of C ex M being Morphism of o,o1 st
( M in <^o,o1^> & ( for M1 being Morphism of o,o1 st M1 in <^o,o1^> holds
M = M1 ) ) ; ::_thesis: o is initial
let o1 be object of C; :: according to ALTCAT_3:def_9 ::_thesis: ex M being Morphism of o,o1 st
( M in <^o,o1^> & <^o,o1^> is trivial )
consider M being Morphism of o,o1 such that
A5: M in <^o,o1^> and
A6: for M1 being Morphism of o,o1 st M1 in <^o,o1^> holds
M = M1 by A4;
A7: <^o,o1^> c= {M}
proof
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in <^o,o1^> or x in {M} )
assume A8: x in <^o,o1^> ; ::_thesis: x in {M}
then reconsider M1 = x as Morphism of o,o1 ;
M1 = M by A6, A8;
hence x in {M} by TARSKI:def_1; ::_thesis: verum
end;
{M} c= <^o,o1^>
proof
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in {M} or x in <^o,o1^> )
assume x in {M} ; ::_thesis: x in <^o,o1^>
hence x in <^o,o1^> by A5, TARSKI:def_1; ::_thesis: verum
end;
then <^o,o1^> = {M} by A7, XBOOLE_0:def_10;
hence ex M being Morphism of o,o1 st
( M in <^o,o1^> & <^o,o1^> is trivial ) ; ::_thesis: verum
end;
theorem Th26: :: ALTCAT_3:26
for C being category
for o1, o2 being object of C st o1 is initial & o2 is initial holds
o1,o2 are_iso
proof
let C be category; ::_thesis: for o1, o2 being object of C st o1 is initial & o2 is initial holds
o1,o2 are_iso
let o1, o2 be object of C; ::_thesis: ( o1 is initial & o2 is initial implies o1,o2 are_iso )
assume that
A1: o1 is initial and
A2: o2 is initial ; ::_thesis: o1,o2 are_iso
ex N being Morphism of o2,o2 st
( N in <^o2,o2^> & <^o2,o2^> is trivial ) by A2, Def9;
then consider y being set such that
A3: <^o2,o2^> = {y} by ZFMISC_1:131;
consider M2 being Morphism of o2,o1 such that
A4: M2 in <^o2,o1^> and
<^o2,o1^> is trivial by A2, Def9;
consider M1 being Morphism of o1,o2 such that
A5: M1 in <^o1,o2^> and
<^o1,o2^> is trivial by A1, Def9;
thus ( <^o1,o2^> <> {} & <^o2,o1^> <> {} ) by A5, A4; :: according to ALTCAT_3:def_6 ::_thesis: ex A being Morphism of o1,o2 st A is iso
( M1 * M2 = y & idm o2 = y ) by A3, TARSKI:def_1;
then M2 is_right_inverse_of M1 by Def1;
then A6: M1 is retraction by Def2;
ex M being Morphism of o1,o1 st
( M in <^o1,o1^> & <^o1,o1^> is trivial ) by A1, Def9;
then consider x being set such that
A7: <^o1,o1^> = {x} by ZFMISC_1:131;
( M2 * M1 = x & idm o1 = x ) by A7, TARSKI:def_1;
then M2 is_left_inverse_of M1 by Def1;
then M1 is coretraction by Def3;
then M1 is iso by A5, A4, A6, Th6;
hence ex A being Morphism of o1,o2 st A is iso ; ::_thesis: verum
end;
definition
let C be AltGraph ;
let o be object of C;
attro is terminal means :Def10: :: ALTCAT_3:def 10
for o1 being object of C ex M being Morphism of o1,o st
( M in <^o1,o^> & <^o1,o^> is trivial );
end;
:: deftheorem Def10 defines terminal ALTCAT_3:def_10_:_
for C being AltGraph
for o being object of C holds
( o is terminal iff for o1 being object of C ex M being Morphism of o1,o st
( M in <^o1,o^> & <^o1,o^> is trivial ) );
theorem :: ALTCAT_3:27
for C being AltGraph
for o being object of C holds
( o is terminal iff for o1 being object of C ex M being Morphism of o1,o st
( M in <^o1,o^> & ( for M1 being Morphism of o1,o st M1 in <^o1,o^> holds
M = M1 ) ) )
proof
let C be AltGraph ; ::_thesis: for o being object of C holds
( o is terminal iff for o1 being object of C ex M being Morphism of o1,o st
( M in <^o1,o^> & ( for M1 being Morphism of o1,o st M1 in <^o1,o^> holds
M = M1 ) ) )
let o be object of C; ::_thesis: ( o is terminal iff for o1 being object of C ex M being Morphism of o1,o st
( M in <^o1,o^> & ( for M1 being Morphism of o1,o st M1 in <^o1,o^> holds
M = M1 ) ) )
thus ( o is terminal implies for o1 being object of C ex M being Morphism of o1,o st
( M in <^o1,o^> & ( for M1 being Morphism of o1,o st M1 in <^o1,o^> holds
M = M1 ) ) ) ::_thesis: ( ( for o1 being object of C ex M being Morphism of o1,o st
( M in <^o1,o^> & ( for M1 being Morphism of o1,o st M1 in <^o1,o^> holds
M = M1 ) ) ) implies o is terminal )
proof
assume A1: o is terminal ; ::_thesis: for o1 being object of C ex M being Morphism of o1,o st
( M in <^o1,o^> & ( for M1 being Morphism of o1,o st M1 in <^o1,o^> holds
M = M1 ) )
let o1 be object of C; ::_thesis: ex M being Morphism of o1,o st
( M in <^o1,o^> & ( for M1 being Morphism of o1,o st M1 in <^o1,o^> holds
M = M1 ) )
consider M being Morphism of o1,o such that
A2: M in <^o1,o^> and
A3: <^o1,o^> is trivial by A1, Def10;
ex i being set st <^o1,o^> = {i} by A2, A3, ZFMISC_1:131;
then <^o1,o^> = {M} by TARSKI:def_1;
then for M1 being Morphism of o1,o st M1 in <^o1,o^> holds
M = M1 by TARSKI:def_1;
hence ex M being Morphism of o1,o st
( M in <^o1,o^> & ( for M1 being Morphism of o1,o st M1 in <^o1,o^> holds
M = M1 ) ) by A2; ::_thesis: verum
end;
assume A4: for o1 being object of C ex M being Morphism of o1,o st
( M in <^o1,o^> & ( for M1 being Morphism of o1,o st M1 in <^o1,o^> holds
M = M1 ) ) ; ::_thesis: o is terminal
let o1 be object of C; :: according to ALTCAT_3:def_10 ::_thesis: ex M being Morphism of o1,o st
( M in <^o1,o^> & <^o1,o^> is trivial )
consider M being Morphism of o1,o such that
A5: M in <^o1,o^> and
A6: for M1 being Morphism of o1,o st M1 in <^o1,o^> holds
M = M1 by A4;
A7: <^o1,o^> c= {M}
proof
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in <^o1,o^> or x in {M} )
assume A8: x in <^o1,o^> ; ::_thesis: x in {M}
then reconsider M1 = x as Morphism of o1,o ;
M1 = M by A6, A8;
hence x in {M} by TARSKI:def_1; ::_thesis: verum
end;
{M} c= <^o1,o^>
proof
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in {M} or x in <^o1,o^> )
assume x in {M} ; ::_thesis: x in <^o1,o^>
hence x in <^o1,o^> by A5, TARSKI:def_1; ::_thesis: verum
end;
then <^o1,o^> = {M} by A7, XBOOLE_0:def_10;
hence ex M being Morphism of o1,o st
( M in <^o1,o^> & <^o1,o^> is trivial ) ; ::_thesis: verum
end;
theorem :: ALTCAT_3:28
for C being category
for o1, o2 being object of C st o1 is terminal & o2 is terminal holds
o1,o2 are_iso
proof
let C be category; ::_thesis: for o1, o2 being object of C st o1 is terminal & o2 is terminal holds
o1,o2 are_iso
let o1, o2 be object of C; ::_thesis: ( o1 is terminal & o2 is terminal implies o1,o2 are_iso )
assume that
A1: o1 is terminal and
A2: o2 is terminal ; ::_thesis: o1,o2 are_iso
ex M being Morphism of o1,o1 st
( M in <^o1,o1^> & <^o1,o1^> is trivial ) by A1, Def10;
then consider x being set such that
A3: <^o1,o1^> = {x} by ZFMISC_1:131;
consider M2 being Morphism of o2,o1 such that
A4: M2 in <^o2,o1^> and
<^o2,o1^> is trivial by A1, Def10;
consider M1 being Morphism of o1,o2 such that
A5: M1 in <^o1,o2^> and
<^o1,o2^> is trivial by A2, Def10;
thus ( <^o1,o2^> <> {} & <^o2,o1^> <> {} ) by A5, A4; :: according to ALTCAT_3:def_6 ::_thesis: ex A being Morphism of o1,o2 st A is iso
M2 * M1 = x by A3, TARSKI:def_1;
then M2 * M1 = idm o1 by A3, TARSKI:def_1;
then M2 is_left_inverse_of M1 by Def1;
then A6: M1 is coretraction by Def3;
ex N being Morphism of o2,o2 st
( N in <^o2,o2^> & <^o2,o2^> is trivial ) by A2, Def10;
then consider y being set such that
A7: <^o2,o2^> = {y} by ZFMISC_1:131;
M1 * M2 = y by A7, TARSKI:def_1;
then M1 * M2 = idm o2 by A7, TARSKI:def_1;
then M2 is_right_inverse_of M1 by Def1;
then M1 is retraction by Def2;
then M1 is iso by A5, A4, A6, Th6;
hence ex A being Morphism of o1,o2 st A is iso ; ::_thesis: verum
end;
definition
let C be AltGraph ;
let o be object of C;
attro is _zero means :Def11: :: ALTCAT_3:def 11
( o is initial & o is terminal );
end;
:: deftheorem Def11 defines _zero ALTCAT_3:def_11_:_
for C being AltGraph
for o being object of C holds
( o is _zero iff ( o is initial & o is terminal ) );
theorem :: ALTCAT_3:29
for C being category
for o1, o2 being object of C st o1 is _zero & o2 is _zero holds
o1,o2 are_iso
proof
let C be category; ::_thesis: for o1, o2 being object of C st o1 is _zero & o2 is _zero holds
o1,o2 are_iso
let o1, o2 be object of C; ::_thesis: ( o1 is _zero & o2 is _zero implies o1,o2 are_iso )
assume ( o1 is _zero & o2 is _zero ) ; ::_thesis: o1,o2 are_iso
then ( o1 is initial & o2 is initial ) by Def11;
hence o1,o2 are_iso by Th26; ::_thesis: verum
end;
definition
let C be non empty AltCatStr ;
let o1, o2 be object of C;
let M be Morphism of o1,o2;
attrM is _zero means :Def12: :: ALTCAT_3:def 12
for o being object of C st o is _zero holds
for A being Morphism of o1,o
for B being Morphism of o,o2 holds M = B * A;
end;
:: deftheorem Def12 defines _zero ALTCAT_3:def_12_:_
for C being non empty AltCatStr
for o1, o2 being object of C
for M being Morphism of o1,o2 holds
( M is _zero iff for o being object of C st o is _zero holds
for A being Morphism of o1,o
for B being Morphism of o,o2 holds M = B * A );
theorem :: ALTCAT_3:30
for C being category
for o1, o2, o3 being object of C
for M1 being Morphism of o1,o2
for M2 being Morphism of o2,o3 st M1 is _zero & M2 is _zero holds
M2 * M1 is _zero
proof
let C be category; ::_thesis: for o1, o2, o3 being object of C
for M1 being Morphism of o1,o2
for M2 being Morphism of o2,o3 st M1 is _zero & M2 is _zero holds
M2 * M1 is _zero
let o1, o2, o3 be object of C; ::_thesis: for M1 being Morphism of o1,o2
for M2 being Morphism of o2,o3 st M1 is _zero & M2 is _zero holds
M2 * M1 is _zero
let M1 be Morphism of o1,o2; ::_thesis: for M2 being Morphism of o2,o3 st M1 is _zero & M2 is _zero holds
M2 * M1 is _zero
let M2 be Morphism of o2,o3; ::_thesis: ( M1 is _zero & M2 is _zero implies M2 * M1 is _zero )
assume that
A1: M1 is _zero and
A2: M2 is _zero ; ::_thesis: M2 * M1 is _zero
let o be object of C; :: according to ALTCAT_3:def_12 ::_thesis: ( o is _zero implies for A being Morphism of o1,o
for B being Morphism of o,o3 holds M2 * M1 = B * A )
assume A3: o is _zero ; ::_thesis: for A being Morphism of o1,o
for B being Morphism of o,o3 holds M2 * M1 = B * A
then A4: o is initial by Def11;
then consider B1 being Morphism of o,o2 such that
A5: B1 in <^o,o2^> and
<^o,o2^> is trivial by Def9;
let A be Morphism of o1,o; ::_thesis: for B being Morphism of o,o3 holds M2 * M1 = B * A
let B be Morphism of o,o3; ::_thesis: M2 * M1 = B * A
consider B2 being Morphism of o,o3 such that
A6: B2 in <^o,o3^> and
A7: <^o,o3^> is trivial by A4, Def9;
consider y being set such that
A8: <^o,o3^> = {y} by A6, A7, ZFMISC_1:131;
A9: o is terminal by A3, Def11;
then consider A1 being Morphism of o1,o such that
A10: A1 in <^o1,o^> and
A11: <^o1,o^> is trivial by Def10;
consider x being set such that
A12: <^o1,o^> = {x} by A10, A11, ZFMISC_1:131;
ex M being Morphism of o,o st
( M in <^o,o^> & <^o,o^> is trivial ) by A9, Def10;
then consider z being set such that
A13: <^o,o^> = {z} by ZFMISC_1:131;
consider A2 being Morphism of o2,o such that
A14: A2 in <^o2,o^> and
<^o2,o^> is trivial by A9, Def10;
A15: ( idm o = z & A2 * B1 = z ) by A13, TARSKI:def_1;
A16: ( B = y & B2 = y ) by A8, TARSKI:def_1;
A17: ( A = x & A1 = x ) by A12, TARSKI:def_1;
A18: <^o2,o3^> <> {} by A6, A14, ALTCAT_1:def_2;
M2 = B2 * A2 by A2, A3, Def12;
hence M2 * M1 = (B2 * A2) * (B1 * A1) by A1, A3, Def12
.= ((B2 * A2) * B1) * A1 by A5, A10, A18, ALTCAT_1:21
.= (B * (idm o)) * A by A5, A6, A14, A17, A16, A15, ALTCAT_1:21
.= B * A by A6, ALTCAT_1:def_17 ;
::_thesis: verum
end;