:: CAT_3 semantic presentation

begin

scheme :: CAT_3:sch 1
LambdaIdx{ F1() -> ( ( ) ( ) set ) , F2() -> ( ( non empty ) ( non empty ) set ) , F3( ( ( ) ( ) set ) ) -> ( ( ) ( ) Element of F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) } :
ex F being ( ( Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) Function of F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) st
for x being ( ( ) ( ) set ) st x : ( ( ) ( ) set ) in F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) holds
F : ( ( Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) Function of F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) /. x : ( ( ) ( ) set ) : ( ( ) ( ) Element of F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) = F3( ( ( ) ( ) Element of F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ,x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) )
proof end;

theorem :: CAT_3:1
for I being ( ( ) ( ) set )
for A being ( ( non empty ) ( non empty ) set )
for F1, F2 being ( ( Function-like V18(b1 : ( ( ) ( ) set ) ,b2 : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined b2 : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) ,b2 : ( ( non empty ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) ,A : ( ( non empty ) ( non empty ) set ) ) st ( for x being ( ( ) ( ) set ) st x : ( ( ) ( ) set ) in I : ( ( ) ( ) set ) holds
F1 : ( ( Function-like V18(b1 : ( ( ) ( ) set ) ,b2 : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined b2 : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) ,b2 : ( ( non empty ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) ,b2 : ( ( non empty ) ( non empty ) set ) ) /. x : ( ( ) ( ) set ) : ( ( ) ( ) Element of b2 : ( ( non empty ) ( non empty ) set ) ) = F2 : ( ( Function-like V18(b1 : ( ( ) ( ) set ) ,b2 : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined b2 : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) ,b2 : ( ( non empty ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) ,b2 : ( ( non empty ) ( non empty ) set ) ) /. x : ( ( ) ( ) set ) : ( ( ) ( ) Element of b2 : ( ( non empty ) ( non empty ) set ) ) ) holds
F1 : ( ( Function-like V18(b1 : ( ( ) ( ) set ) ,b2 : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined b2 : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) ,b2 : ( ( non empty ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) ,b2 : ( ( non empty ) ( non empty ) set ) ) = F2 : ( ( Function-like V18(b1 : ( ( ) ( ) set ) ,b2 : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined b2 : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) ,b2 : ( ( non empty ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) ,b2 : ( ( non empty ) ( non empty ) set ) ) ;

scheme :: CAT_3:sch 2
FuncIdxcorrectness{ F1() -> ( ( ) ( ) set ) , F2() -> ( ( non empty ) ( non empty ) set ) , F3( ( ( ) ( ) set ) ) -> ( ( ) ( ) Element of F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) } :
( ex F being ( ( Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) Function of F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) st
for x being ( ( ) ( ) set ) st x : ( ( Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) Function of F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) in F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) holds
F : ( ( Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) Function of F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) /. x : ( ( Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) Function of F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) Element of F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) = F3( ( ( ) ( ) Element of F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ,x : ( ( Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) Function of F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) & ( for F1, F2 being ( ( Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) Function of F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) st ( for x being ( ( ) ( ) set ) st x : ( ( ) ( ) set ) in F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) holds
F1 : ( ( Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) Function of F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) /. x : ( ( ) ( ) set ) : ( ( ) ( ) Element of F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) = F3( ( ( ) ( ) Element of F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ,x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) & ( for x being ( ( ) ( ) set ) st x : ( ( ) ( ) set ) in F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) holds
F2 : ( ( Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) Function of F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) /. x : ( ( ) ( ) set ) : ( ( ) ( ) Element of F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) = F3( ( ( ) ( ) Element of F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ,x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) holds
F1 : ( ( Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) Function of F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) = F2 : ( ( Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) Function of F1( ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,F2( ( ( non empty ) ( non empty ) set ) ) : ( ( non empty ) ( non empty ) set ) ) ) )
proof end;

definition
let A be ( ( non empty ) ( non empty ) set ) ;
let x be ( ( ) ( ) set ) ;
let a be ( ( ) ( ) Element of A : ( ( non empty ) ( non empty ) set ) ) ;
:: original: .-->
redefine func x .--> a -> ( ( Function-like V18({x : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) ,A : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like {x : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined A : ( ( non empty ) ( non empty ) set ) -valued Function-like V18({x : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) ,A : ( ( non empty ) ( non empty ) set ) ) ) Function of {x : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) ,A : ( ( non empty ) ( non empty ) set ) ) ;
end;

theorem :: CAT_3:2
for I, x being ( ( ) ( ) set )
for A being ( ( non empty ) ( non empty ) set )
for a being ( ( ) ( ) Element of A : ( ( non empty ) ( non empty ) set ) ) st x : ( ( ) ( ) set ) in I : ( ( ) ( ) set ) holds
(I : ( ( ) ( ) set ) --> a : ( ( ) ( ) Element of b3 : ( ( non empty ) ( non empty ) set ) ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) ,b3 : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined b3 : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) ,b3 : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(b1 : ( ( ) ( ) set ) ,b3 : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) : ( ( ) ( ) Element of b3 : ( ( non empty ) ( non empty ) set ) ) = a : ( ( ) ( ) Element of b3 : ( ( non empty ) ( non empty ) set ) ) ;

theorem :: CAT_3:3
for x1, x2 being ( ( ) ( ) set )
for A being ( ( non empty ) ( non empty ) set ) st x1 : ( ( ) ( ) set ) <> x2 : ( ( ) ( ) set ) holds
for y1, y2 being ( ( ) ( ) Element of A : ( ( non empty ) ( non empty ) set ) ) holds
( ((x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> (y1 : ( ( ) ( ) Element of b3 : ( ( non empty ) ( non empty ) set ) ) ,y2 : ( ( ) ( ) Element of b3 : ( ( non empty ) ( non empty ) set ) ) )) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) ,b3 : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined b3 : ( ( non empty ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) ,b3 : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) ,b3 : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x1 : ( ( ) ( ) set ) : ( ( ) ( ) Element of b3 : ( ( non empty ) ( non empty ) set ) ) = y1 : ( ( ) ( ) Element of b3 : ( ( non empty ) ( non empty ) set ) ) & ((x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> (y1 : ( ( ) ( ) Element of b3 : ( ( non empty ) ( non empty ) set ) ) ,y2 : ( ( ) ( ) Element of b3 : ( ( non empty ) ( non empty ) set ) ) )) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) ,b3 : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined b3 : ( ( non empty ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) ,b3 : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) ,b3 : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x2 : ( ( ) ( ) set ) : ( ( ) ( ) Element of b3 : ( ( non empty ) ( non empty ) set ) ) = y2 : ( ( ) ( ) Element of b3 : ( ( non empty ) ( non empty ) set ) ) ) ;

begin

definition
let C be ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ;
let I be ( ( ) ( ) set ) ;
let F be ( ( Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ;
func doms F -> ( ( Function-like V18(I : ( ( ) ( ) set ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) means :: CAT_3:def 1
for x being ( ( ) ( ) set ) st x : ( ( ) ( ) set ) in I : ( ( ) ( ) set ) holds
it : ( ( Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) : ( ( ) ( ) Element of the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = dom (F : ( ( Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ;
func cods F -> ( ( Function-like V18(I : ( ( ) ( ) set ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) means :: CAT_3:def 2
for x being ( ( ) ( ) set ) st x : ( ( ) ( ) set ) in I : ( ( ) ( ) set ) holds
it : ( ( Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) : ( ( ) ( ) Element of the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = cod (F : ( ( Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ;
end;

theorem :: CAT_3:4
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for f being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) holds doms (I : ( ( ) ( ) set ) --> f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = I : ( ( ) ( ) set ) --> (dom f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ;

theorem :: CAT_3:5
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for f being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) holds cods (I : ( ( ) ( ) set ) --> f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = I : ( ( ) ( ) set ) --> (cod f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ;

theorem :: CAT_3:6
for x1, x2 being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for p1, p2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) holds doms ((x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> (p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) )) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = (x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> ((dom p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,(dom p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ;

theorem :: CAT_3:7
for x1, x2 being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for p1, p2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) holds cods ((x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> (p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) )) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = (x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> ((cod p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,(cod p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ;

definition
let C be ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ;
let I be ( ( ) ( ) set ) ;
let F be ( ( Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ;
func F opp -> ( ( Function-like V18(I : ( ( ) ( ) set ) , the carrier' of (C : ( ( non empty ) ( non empty ) set ) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier' of (C : ( ( non empty ) ( non empty ) set ) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier' of (C : ( ( non empty ) ( non empty ) set ) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of (C : ( ( non empty ) ( non empty ) set ) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict ) CatStr ) : ( ( ) ( non empty ) set ) ) means :: CAT_3:def 3
for x being ( ( ) ( ) set ) st x : ( ( ) ( ) set ) in I : ( ( ) ( ) set ) holds
it : ( ( Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) : ( ( ) ( ) Element of the carrier' of (C : ( ( non empty ) ( non empty ) set ) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict ) CatStr ) : ( ( ) ( non empty ) set ) ) = (F : ( ( Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) opp : ( ( ) ( ) Element of the carrier' of (C : ( ( non empty ) ( non empty ) set ) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict ) CatStr ) : ( ( ) ( non empty ) set ) ) ;
end;

theorem :: CAT_3:8
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for f being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) holds (I : ( ( ) ( ) set ) --> f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) opp : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) = I : ( ( ) ( ) set ) --> (f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) opp) : ( ( ) ( ) Element of the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ;

theorem :: CAT_3:9
for x1, x2 being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for p1, p2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st x1 : ( ( ) ( ) set ) <> x2 : ( ( ) ( ) set ) holds
((x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> (p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) )) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) opp : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of (b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of (b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of (b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of (b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) = (x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> ((p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) opp) : ( ( ) ( ) Element of the carrier' of (b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ,(p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) opp) : ( ( ) ( ) Element of the carrier' of (b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of (b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of (b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of (b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of (b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ;

theorem :: CAT_3:10
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for F being ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds (F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) opp) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) opp : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of ((b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of ((b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of ((b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of ((b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) = F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ;

definition
let C be ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ;
let I be ( ( ) ( ) set ) ;
let F be ( ( Function-like V18(I : ( ( ) ( ) set ) , the carrier' of (C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier' of (C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier' of (C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of (C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ;
func opp F -> ( ( Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) means :: CAT_3:def 4
for x being ( ( ) ( ) set ) st x : ( ( ) ( ) set ) in I : ( ( ) ( ) set ) holds
it : ( ( Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = opp (F : ( ( Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of (C : ( ( non empty ) ( non empty ) set ) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict ) CatStr ) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ;
end;

theorem :: CAT_3:11
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for f being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) holds opp (I : ( ( ) ( ) set ) --> f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = I : ( ( ) ( ) set ) --> (opp f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ;

theorem :: CAT_3:12
for x1, x2 being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) st x1 : ( ( ) ( ) set ) <> x2 : ( ( ) ( ) set ) holds
for p1, p2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) holds opp ((x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> (p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) )) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of (b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of (b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of (b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of (b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = (x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> ((opp p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,(opp p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ;

theorem :: CAT_3:13
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for F being ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds opp (F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) opp) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ;

definition
let C be ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ;
let I be ( ( ) ( ) set ) ;
let F be ( ( Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ;
let f be ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ;
func F * f -> ( ( Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) means :: CAT_3:def 5
for x being ( ( ) ( ) set ) st x : ( ( ) ( ) set ) in I : ( ( ) ( ) set ) holds
it : ( ( Function-like ) ( Relation-like K20(I : ( ( ) ( ) set ) ,I : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined I : ( ( ) ( ) set ) -valued Function-like ) Element of K19(K20(K20(I : ( ( ) ( ) set ) ,I : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,I : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = (F : ( ( Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) (*) f : ( ( Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ;
func f * F -> ( ( Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) means :: CAT_3:def 6
for x being ( ( ) ( ) set ) st x : ( ( ) ( ) set ) in I : ( ( ) ( ) set ) holds
it : ( ( Function-like ) ( Relation-like K20(I : ( ( ) ( ) set ) ,I : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined I : ( ( ) ( ) set ) -valued Function-like ) Element of K19(K20(K20(I : ( ( ) ( ) set ) ,I : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,I : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = f : ( ( Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) (*) (F : ( ( Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ;
end;

theorem :: CAT_3:14
for x1, x2 being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for p1, p2, f being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st x1 : ( ( ) ( ) set ) <> x2 : ( ( ) ( ) set ) holds
((x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> (p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) )) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) * f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = (x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> ((p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) (*) f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,(p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) (*) f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ;

theorem :: CAT_3:15
for x1, x2 being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for f, p1, p2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st x1 : ( ( ) ( ) set ) <> x2 : ( ( ) ( ) set ) holds
f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) * ((x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> (p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) )) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = (x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> ((f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) (*) p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,(f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) (*) p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ;

theorem :: CAT_3:16
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for f being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) )
for F being ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) st doms F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = I : ( ( ) ( ) set ) --> (cod f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) holds
( doms (F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) * f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = I : ( ( ) ( ) set ) --> (dom f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) & cods (F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) * f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = cods F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ;

theorem :: CAT_3:17
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for f being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) )
for F being ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) st cods F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = I : ( ( ) ( ) set ) --> (dom f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) holds
( doms (f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) * F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = doms F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) & cods (f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) * F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = I : ( ( ) ( ) set ) --> (cod f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) ;

definition
let C be ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ;
let I be ( ( ) ( ) set ) ;
let F, G be ( ( Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ;
func F "*" G -> ( ( Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) means :: CAT_3:def 7
for x being ( ( ) ( ) set ) st x : ( ( ) ( ) set ) in I : ( ( ) ( ) set ) holds
it : ( ( Function-like ) ( Relation-like K20(I : ( ( ) ( ) set ) ,I : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined I : ( ( ) ( ) set ) -valued Function-like ) Element of K19(K20(K20(I : ( ( ) ( ) set ) ,I : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,I : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = (F : ( ( Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) (*) (G : ( ( Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(I : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ;
end;

theorem :: CAT_3:18
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for F, G being ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) st doms F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = cods G : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds
( doms (F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) "*" G : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = doms G : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) & cods (F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) "*" G : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = cods F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ;

theorem :: CAT_3:19
for x1, x2 being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for p1, p2, q1, q2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st x1 : ( ( ) ( ) set ) <> x2 : ( ( ) ( ) set ) holds
((x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> (p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) )) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) "*" ((x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> (q1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,q2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) )) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = (x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> ((p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) (*) q1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,(p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) (*) q2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ;

theorem :: CAT_3:20
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for f being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) )
for F being ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) * f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) "*" (I : ( ( ) ( ) set ) --> f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ;

theorem :: CAT_3:21
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for f being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) )
for F being ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) * F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = (I : ( ( ) ( ) set ) --> f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) "*" F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ;

begin

definition
let C be ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ;
let a, b be ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ;
let IT be ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ;
attr IT is retraction means :: CAT_3:def 8
( Hom (a : ( ( ) ( ) set ) ,b : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & Hom (b : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ,a : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of K19( the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & ex g being ( ( ) ( ) Morphism of b : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ,a : ( ( ) ( ) set ) ) st IT : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) * g : ( ( ) ( ) Morphism of b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Morphism of b : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ,b : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) = id b : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) Morphism of b : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ,b : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) );
attr IT is coretraction means :: CAT_3:def 9
( Hom (a : ( ( ) ( ) set ) ,b : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & Hom (b : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ,a : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of K19( the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & ex g being ( ( ) ( ) Morphism of b : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ,a : ( ( ) ( ) set ) ) st g : ( ( ) ( ) Morphism of b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) * IT : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) Morphism of a : ( ( ) ( ) set ) ,a : ( ( ) ( ) set ) ) = id a : ( ( ) ( ) set ) : ( ( ) ( ) Morphism of a : ( ( ) ( ) set ) ,a : ( ( ) ( ) set ) ) );
end;

theorem :: CAT_3:22
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is retraction holds
f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is epi ;

theorem :: CAT_3:23
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is coretraction holds
f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is monic ;

theorem :: CAT_3:24
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b, c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) )
for g being ( ( ) ( ) Morphism of b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is retraction & g : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is retraction holds
g : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) * f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is retraction ;

theorem :: CAT_3:25
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b, c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) )
for g being ( ( ) ( ) Morphism of b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is coretraction & g : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is coretraction holds
g : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) * f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is coretraction ;

theorem :: CAT_3:26
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c, a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) )
for g being ( ( ) ( ) Morphism of b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st Hom (a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & Hom (b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & g : ( ( ) ( ) Morphism of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) * f : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is retraction holds
g : ( ( ) ( ) Morphism of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is retraction ;

theorem :: CAT_3:27
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b, c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) )
for g being ( ( ) ( ) Morphism of b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st Hom (b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & Hom (c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & g : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) * f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is coretraction holds
f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is coretraction ;

theorem :: CAT_3:28
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is retraction & f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is monic holds
f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is invertible ;

theorem :: CAT_3:29
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is coretraction & f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is epi holds
f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is invertible ;

theorem :: CAT_3:30
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) holds
( f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is invertible iff ( f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is retraction & f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is coretraction ) ) ;

definition
let C be ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ;
let a, b be ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ;
assume Hom (a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) ;
let D be ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ;
let T be ( ( ) ( Relation-like the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -defined the carrier' of D : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18( the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) , the carrier' of D : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Functor of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ,D : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ) ;
let f be ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ;
func T /. f -> ( ( ) ( ) Morphism of T : ( ( Function-like ) ( Relation-like K20(a : ( ( ) ( ) set ) ,a : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined a : ( ( ) ( ) set ) -valued Function-like ) Element of K19(K20(K20(a : ( ( ) ( ) set ) ,a : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,a : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) . a : ( ( ) ( ) set ) : ( ( ) ( ) Element of the carrier of D : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ,T : ( ( Function-like ) ( Relation-like K20(a : ( ( ) ( ) set ) ,a : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined a : ( ( ) ( ) set ) -valued Function-like ) Element of K19(K20(K20(a : ( ( ) ( ) set ) ,a : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,a : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) . b : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier of D : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) equals :: CAT_3:def 10
T : ( ( Function-like ) ( Relation-like K20(a : ( ( ) ( ) set ) ,a : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) -defined a : ( ( ) ( ) set ) -valued Function-like ) Element of K19(K20(K20(a : ( ( ) ( ) set ) ,a : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ,a : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) . f : ( ( ) ( ) Morphism of b : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ,D : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) : ( ( ) ( ) Element of the carrier' of D : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ;
end;

theorem :: CAT_3:31
for C, D being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) )
for T being ( ( ) ( Relation-like the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Functor of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ,D : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ) st f : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is retraction holds
T : ( ( ) ( Relation-like the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Functor of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ,b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ) /. f : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Morphism of b6 : ( ( ) ( Relation-like the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Functor of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ,b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ) . b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,b6 : ( ( ) ( Relation-like the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Functor of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ,b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ) . b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) is retraction ;

theorem :: CAT_3:32
for C, D being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) )
for T being ( ( ) ( Relation-like the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Functor of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ,D : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ) st f : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is coretraction holds
T : ( ( ) ( Relation-like the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Functor of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ,b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ) /. f : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Morphism of b6 : ( ( ) ( Relation-like the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Functor of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ,b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ) . b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,b6 : ( ( ) ( Relation-like the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Functor of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ,b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ) . b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) is coretraction ;

theorem :: CAT_3:33
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) holds
( f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is retraction iff f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) opp : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) opp : ( ( ) ( ) Element of the carrier of (b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ,b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) opp : ( ( ) ( ) Element of the carrier of (b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) is coretraction ) ;

theorem :: CAT_3:34
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) holds
( f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is coretraction iff f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) opp : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) opp : ( ( ) ( ) Element of the carrier of (b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ,b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) opp : ( ( ) ( ) Element of the carrier of (b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) is retraction ) ;

begin

definition
let C be ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ;
let a, b be ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ;
assume b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is terminal ;
func term (a,b) -> ( ( ) ( ) Morphism of a : ( ( ) ( ) set ) ,b : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) means :: CAT_3:def 11
verum;
end;

theorem :: CAT_3:35
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for b, a being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) st b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is terminal holds
( dom (term (a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) )) : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) & cod (term (a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) )) : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ;

theorem :: CAT_3:36
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for b, a being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is terminal & dom f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) & cod f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) holds
term (a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) = f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ;

theorem :: CAT_3:37
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is terminal holds
term (a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) = f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ;

begin

definition
let C be ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ;
let a, b be ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ;
assume a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is initial ;
func init (a,b) -> ( ( ) ( ) Morphism of a : ( ( ) ( ) set ) ,b : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) means :: CAT_3:def 12
verum;
end;

theorem :: CAT_3:38
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) st a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is initial holds
( dom (init (a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) )) : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) & cod (init (a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) )) : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ;

theorem :: CAT_3:39
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is initial & dom f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) & cod f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) holds
init (a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) = f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ;

theorem :: CAT_3:40
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is initial holds
init (a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) = f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ;

begin

definition
let C be ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ;
let a be ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ;
let I be ( ( ) ( ) set ) ;
mode Projections_family of a,I -> ( ( Function-like V18(I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) ( Relation-like I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) -defined the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Function of I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) means :: CAT_3:def 13
doms it : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( Function-like V18(I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) ( Relation-like I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) -defined the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Function of I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) --> a : ( ( ) ( ) set ) : ( ( Function-like V18(I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) ( Relation-like I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) -defined the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Element of K19(K20(I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ;
end;

theorem :: CAT_3:41
for I, x being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for F being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) st x : ( ( ) ( ) set ) in I : ( ( ) ( ) set ) holds
dom (F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ;

theorem :: CAT_3:42
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for F being ( ( Function-like V18( {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {} : ( ( ) ( empty ) set ) -defined the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like empty V18( {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of {} : ( ( ) ( empty ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds F : ( ( Function-like V18( {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {} : ( ( ) ( empty ) set ) -defined the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like empty V18( {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) is ( ( ) ( Relation-like {} : ( ( ) ( empty ) set ) -defined the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like empty V18( {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) , {} : ( ( ) ( empty ) set ) ) ;

theorem :: CAT_3:43
for y being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st dom f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) holds
y : ( ( ) ( ) set ) .--> f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of {b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) is ( ( ) ( Relation-like {b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,{y : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) ) ;

theorem :: CAT_3:44
for x1, x2 being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for p1, p2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st dom p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) & dom p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) holds
(x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> (p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) is ( ( ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,{x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) ) ;

theorem :: CAT_3:45
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) )
for F being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) st cod f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) holds
F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) * f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) is ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of dom f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) ;

theorem :: CAT_3:46
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for F being ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) )
for G being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) st doms F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = cods G : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds
F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) "*" G : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) is ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) ;

theorem :: CAT_3:47
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for f being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) )
for F being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of cod f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) holds (f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) opp) : ( ( ) ( ) Element of the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) * (F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of cod b3 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) opp) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) = (F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of cod b3 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) * f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) opp : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ;

definition
let C be ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ;
let a be ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ;
let I be ( ( ) ( ) set ) ;
let F be ( ( Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ;
pred a is_a_product_wrt F means :: CAT_3:def 14
( F : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) is ( ( ) ( Relation-like I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) -defined the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Projections_family of a : ( ( ) ( ) set ) ,I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) & ( for b being ( ( ) ( ) Object of ( ( ) ( ) set ) )
for F9 being ( ( ) ( Relation-like I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) -defined the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Projections_family of b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) st cods F : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( Function-like V18(I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) ( Relation-like I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) -defined the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Function of I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = cods F9 : ( ( ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b1 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) : ( ( Function-like V18(I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) ( Relation-like I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) -defined the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Function of I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) holds
ex h being ( ( ) ( ) Morphism of ( ( ) ( ) set ) ) st
( h : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) in Hom (b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,a : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of K19( the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) & ( for k being ( ( ) ( ) Morphism of ( ( ) ( ) set ) ) st k : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) in Hom (b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,a : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of K19( the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) holds
( ( for x being ( ( ) ( ) set ) st x : ( ( ) ( ) set ) in I : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) holds
(F : ( ( Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like a : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(a : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) (*) k : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = F9 : ( ( ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b1 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) iff h : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) = k : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) ) ) ) );
end;

theorem :: CAT_3:48
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c, d being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for F being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) )
for F9 being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) st c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) & d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt F9 : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) & cods F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = cods F9 : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds
c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) are_isomorphic ;

theorem :: CAT_3:49
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for F being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) st c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) & ( for x1, x2 being ( ( ) ( ) set ) st x1 : ( ( ) ( ) set ) in I : ( ( ) ( ) set ) & x2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) in I : ( ( ) ( ) set ) holds
Hom ((cod (F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) /. x1 : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,(cod (F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) /. x2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) ) holds
for x being ( ( ) ( ) set ) st x : ( ( ) ( ) set ) in I : ( ( ) ( ) set ) holds
for d being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) st d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) = cod (F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) & Hom (c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) holds
for f being ( ( ) ( ) Morphism of c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st f : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b6 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) = F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) : ( ( ) ( ) Element of the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds
f : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b6 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is retraction ;

theorem :: CAT_3:50
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for F being ( ( Function-like V18( {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {} : ( ( ) ( empty ) set ) -defined the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like empty V18( {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of {} : ( ( ) ( empty ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds
( a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt F : ( ( Function-like V18( {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {} : ( ( ) ( empty ) set ) -defined the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like empty V18( {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) iff a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is terminal ) ;

theorem :: CAT_3:51
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for F being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) st a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) holds
for f being ( ( ) ( ) Morphism of b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st dom f : ( ( ) ( ) Morphism of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) & cod f : ( ( ) ( ) Morphism of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) & f : ( ( ) ( ) Morphism of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is invertible holds
b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) * f : ( ( ) ( ) Morphism of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ;

theorem :: CAT_3:52
for y being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) holds a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt y : ( ( ) ( ) set ) .--> (id a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of {b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ;

theorem :: CAT_3:53
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for F being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) st a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) & ( for x being ( ( ) ( ) set ) st x : ( ( ) ( ) set ) in I : ( ( ) ( ) set ) holds
cod (F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) is terminal ) holds
a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is terminal ;

definition
let C be ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ;
let c be ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ;
let p1, p2 be ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ;
pred c is_a_product_wrt p1,p2 means :: CAT_3:def 15
( dom p1 : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = c : ( ( ) ( ) set ) & dom p2 : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = c : ( ( ) ( ) set ) & ( for d being ( ( ) ( ) Object of ( ( ) ( ) set ) )
for f, g being ( ( ) ( ) Morphism of ( ( ) ( ) set ) ) st f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) in Hom (d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,(cod p1 : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) : ( ( ) ( ) Element of the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) & g : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) in Hom (d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,(cod p2 : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) : ( ( ) ( ) Element of the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) holds
ex h being ( ( ) ( ) Morphism of ( ( ) ( ) set ) ) st
( h : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) in Hom (d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of K19( the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) & ( for k being ( ( ) ( ) Morphism of ( ( ) ( ) set ) ) st k : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) in Hom (d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of K19( the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) holds
( ( p1 : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) (*) k : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) & p2 : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) (*) k : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = g : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) iff h : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) = k : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) ) ) ) );
end;

theorem :: CAT_3:54
for x1, x2 being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for p1, p2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st x1 : ( ( ) ( ) set ) <> x2 : ( ( ) ( ) set ) holds
( c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) iff c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt (x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> (p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) ;

theorem :: CAT_3:55
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c, a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) st Hom (c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & Hom (c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) holds
for p1 being ( ( ) ( ) Morphism of c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) )
for p2 being ( ( ) ( ) Morphism of c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) holds
( c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt p1 : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ,p2 : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) iff for d being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) st Hom (d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & Hom (d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) holds
( Hom (d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & ( for f being ( ( ) ( ) Morphism of d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) )
for g being ( ( ) ( ) Morphism of d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ex h being ( ( ) ( ) Morphism of d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st
for k being ( ( ) ( ) Morphism of d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) holds
( ( p1 : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) * k : ( ( ) ( ) Morphism of b7 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Morphism of b7 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) = f : ( ( ) ( ) Morphism of b7 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) & p2 : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) * k : ( ( ) ( ) Morphism of b7 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Morphism of b7 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) = g : ( ( ) ( ) Morphism of b7 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ) iff h : ( ( ) ( ) Morphism of b7 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) = k : ( ( ) ( ) Morphism of b7 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ) ) ) ) ;

theorem :: CAT_3:56
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c, d being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for p1, p2, q1, q2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) & d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt q1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,q2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) & cod p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = cod q1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) & cod p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = cod q2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds
c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) are_isomorphic ;

theorem :: CAT_3:57
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c, a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for p1 being ( ( ) ( ) Morphism of c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) )
for p2 being ( ( ) ( ) Morphism of c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st Hom (c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & Hom (c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt p1 : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ,p2 : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) & Hom (a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & Hom (b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) holds
( p1 : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is retraction & p2 : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is retraction ) ;

theorem :: CAT_3:58
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for p1, p2, h being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) & h : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) in Hom (c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( non empty ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) & p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) (*) h : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) & p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) (*) h : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) holds
h : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) = id c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ;

theorem :: CAT_3:59
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for d, c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for p1, p2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) & dom f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) & cod f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) & f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is invertible holds
d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) (*) f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) (*) f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ;

theorem :: CAT_3:60
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for p1, p2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) & cod p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) is terminal holds
c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) , cod p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) are_isomorphic ;

theorem :: CAT_3:61
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for p1, p2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) & cod p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) is terminal holds
c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) , cod p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) are_isomorphic ;

begin

definition
let C be ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ;
let c be ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ;
let I be ( ( ) ( ) set ) ;
mode Injections_family of c,I -> ( ( Function-like V18(I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) ( Relation-like I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) -defined the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Function of I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) means :: CAT_3:def 16
cods it : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( Function-like V18(I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) ( Relation-like I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) -defined the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Function of I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) --> c : ( ( ) ( ) set ) : ( ( Function-like V18(I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) ( Relation-like I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) -defined the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Element of K19(K20(I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ;
end;

theorem :: CAT_3:62
for I, x being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for F being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) st x : ( ( ) ( ) set ) in I : ( ( ) ( ) set ) holds
cod (F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ;

theorem :: CAT_3:63
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for F being ( ( Function-like V18( {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {} : ( ( ) ( empty ) set ) -defined the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like empty V18( {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of {} : ( ( ) ( empty ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds F : ( ( Function-like V18( {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {} : ( ( ) ( empty ) set ) -defined the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like empty V18( {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) is ( ( ) ( Relation-like {} : ( ( ) ( empty ) set ) -defined the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like empty V18( {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) , {} : ( ( ) ( empty ) set ) ) ;

theorem :: CAT_3:64
for y being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st cod f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) holds
y : ( ( ) ( ) set ) .--> f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of {b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) is ( ( ) ( Relation-like {b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,{y : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) ) ;

theorem :: CAT_3:65
for x1, x2 being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for p1, p2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st cod p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) & cod p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) holds
(x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> (p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) is ( ( ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,{x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) ) ;

theorem :: CAT_3:66
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) )
for F being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) st dom f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) holds
f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) * F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) is ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of cod f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) ;

theorem :: CAT_3:67
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for F being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) )
for G being ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) st doms F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = cods G : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds
F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) "*" G : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) is ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) ;

theorem :: CAT_3:68
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for F being ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds
( F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) is ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) iff F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) opp : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) is ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Injections_family of c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) opp : ( ( ) ( ) Element of the carrier of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) ) ;

theorem :: CAT_3:69
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for F being ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of (C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) )
for c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) holds
( F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) is ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Injections_family of c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) iff opp F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) is ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Projections_family of opp c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) ) ;

theorem :: CAT_3:70
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for f being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) )
for F being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of dom f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) holds (F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of dom b3 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) opp) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) * (f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) opp) : ( ( ) ( ) Element of the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) = (f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) * F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of dom b3 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) opp : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ;

definition
let C be ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ;
let c be ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ;
let I be ( ( ) ( ) set ) ;
let F be ( ( Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ;
pred c is_a_coproduct_wrt F means :: CAT_3:def 17
( F : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) is ( ( ) ( Relation-like I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) -defined the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Injections_family of c : ( ( ) ( ) set ) ,I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) & ( for d being ( ( ) ( ) Object of ( ( ) ( ) set ) )
for F9 being ( ( ) ( Relation-like I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) -defined the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Injections_family of d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) st doms F : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( Function-like V18(I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) ( Relation-like I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) -defined the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Function of I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = doms F9 : ( ( ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b1 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) : ( ( Function-like V18(I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) ( Relation-like I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) -defined the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) -valued Function-like V18(I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) Function of I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) , the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) holds
ex h being ( ( ) ( ) Morphism of ( ( ) ( ) set ) ) st
( h : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) in Hom (c : ( ( ) ( ) set ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) & ( for k being ( ( ) ( ) Morphism of ( ( ) ( ) set ) ) st k : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) in Hom (c : ( ( ) ( ) set ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) holds
( ( for x being ( ( ) ( ) set ) st x : ( ( ) ( ) set ) in I : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) holds
k : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) (*) (F : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = F9 : ( ( ) ( Relation-like I : ( ( ) ( ) set ) -defined the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b1 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ) iff h : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) = k : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) ) ) ) );
end;

theorem :: CAT_3:71
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for F being ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of I : ( ( ) ( ) set ) , the carrier' of C : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds
( c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) iff c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) opp : ( ( ) ( ) Element of the carrier of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt F : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) opp : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of (b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ;

theorem :: CAT_3:72
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c, d being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for F being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) )
for F9 being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) st c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) & d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt F9 : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) & doms F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = doms F9 : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds
c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) are_isomorphic ;

theorem :: CAT_3:73
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for F being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) st c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) & ( for x1, x2 being ( ( ) ( ) set ) st x1 : ( ( ) ( ) set ) in I : ( ( ) ( ) set ) & x2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) in I : ( ( ) ( ) set ) holds
Hom ((dom (F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) /. x1 : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,(dom (F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) /. x2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) ) holds
for x being ( ( ) ( ) set ) st x : ( ( ) ( ) set ) in I : ( ( ) ( ) set ) holds
for d being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) st d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) = dom (F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) & Hom (d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) holds
for f being ( ( ) ( ) Morphism of d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st f : ( ( ) ( ) Morphism of b6 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) = F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) : ( ( ) ( ) Element of the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds
f : ( ( ) ( ) Morphism of b6 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is coretraction ;

theorem :: CAT_3:74
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) )
for F being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) st a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) & dom f : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) & cod f : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) & f : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is invertible holds
b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt f : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) * F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) : ( ( Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ;

theorem :: CAT_3:75
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for F being ( ( ) ( Relation-like {} : ( ( ) ( empty ) set ) -defined the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like empty V18( {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) , {} : ( ( ) ( empty ) set ) ) holds
( a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt F : ( ( ) ( Relation-like {} : ( ( ) ( empty ) set ) -defined the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like empty V18( {} : ( ( ) ( empty ) set ) , the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) , {} : ( ( ) ( empty ) set ) ) iff a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is initial ) ;

theorem :: CAT_3:76
for y being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) holds a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt y : ( ( ) ( ) set ) .--> (id a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Function of {b1 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ;

theorem :: CAT_3:77
for I being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for F being ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,I : ( ( ) ( ) set ) ) st a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) & ( for x being ( ( ) ( ) set ) st x : ( ( ) ( ) set ) in I : ( ( ) ( ) set ) holds
dom (F : ( ( ) ( Relation-like b1 : ( ( ) ( ) set ) -defined the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18(b1 : ( ( ) ( ) set ) , the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Injections_family of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b1 : ( ( ) ( ) set ) ) /. x : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b2 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) is initial ) holds
a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is initial ;

definition
let C be ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) ;
let c be ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ;
let i1, i2 be ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ;
pred c is_a_coproduct_wrt i1,i2 means :: CAT_3:def 18
( cod i1 : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = c : ( ( ) ( ) set ) & cod i2 : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = c : ( ( ) ( ) set ) & ( for d being ( ( ) ( ) Object of ( ( ) ( ) set ) )
for f, g being ( ( ) ( ) Morphism of ( ( ) ( ) set ) ) st f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) in Hom ((dom i1 : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) : ( ( ) ( ) Element of the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) & g : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) in Hom ((dom i2 : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) : ( ( ) ( ) Element of the carrier of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) holds
ex h being ( ( ) ( ) Morphism of ( ( ) ( ) set ) ) st
( h : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) in Hom (c : ( ( ) ( ) set ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) & ( for k being ( ( ) ( ) Morphism of ( ( ) ( ) set ) ) st k : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) in Hom (c : ( ( ) ( ) set ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) holds
( ( k : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) (*) i1 : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = f : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) & k : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) (*) i2 : ( ( Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) ( Relation-like c : ( ( ) ( ) set ) -defined C : ( ( non empty ) ( non empty ) set ) -valued Function-like V18(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) ) Element of K19(K20(c : ( ( ) ( ) set ) ,C : ( ( non empty ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) Element of the carrier' of C : ( ( non empty ) ( non empty ) set ) : ( ( ) ( ) set ) ) = g : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) iff h : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) = k : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) ) ) ) );
end;

theorem :: CAT_3:78
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for p1, p2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) holds
( c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_product_wrt p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) iff c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) opp : ( ( ) ( ) Element of the carrier of (b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt p1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) opp : ( ( ) ( ) Element of the carrier' of (b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ,p2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) opp : ( ( ) ( ) Element of the carrier' of (b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) opp) : ( ( non empty non void strict ) ( non empty non void V52() strict Category-like V65() V66() V67() with_identities ) CatStr ) : ( ( ) ( non empty ) set ) ) ) ;

theorem :: CAT_3:79
for x1, x2 being ( ( ) ( ) set )
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for i1, i2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st x1 : ( ( ) ( ) set ) <> x2 : ( ( ) ( ) set ) holds
( c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt i1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,i2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) iff c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt (x1 : ( ( ) ( ) set ) ,x2 : ( ( ) ( ) set ) ) --> (i1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,i2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ) : ( ( Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) ( Relation-like {b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) -defined the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) -valued Function-like V18({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ) Element of K19(K20({b1 : ( ( ) ( ) set ) ,b2 : ( ( ) ( ) set ) } : ( ( ) ( non empty ) set ) , the carrier' of b3 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) : ( ( ) ( ) set ) ) ) ;

theorem :: CAT_3:80
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c, d being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for i1, i2, j1, j2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt i1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,i2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) & d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt j1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,j2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) & dom i1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = dom j1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) & dom i2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = dom j2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) holds
c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) are_isomorphic ;

theorem :: CAT_3:81
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, c, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) st Hom (a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & Hom (b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) holds
for i1 being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) )
for i2 being ( ( ) ( ) Morphism of b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) holds
( c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt i1 : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ,i2 : ( ( ) ( ) Morphism of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) iff for d being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) st Hom (a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & Hom (b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) holds
( Hom (c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & ( for f being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) )
for g being ( ( ) ( ) Morphism of b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ex h being ( ( ) ( ) Morphism of c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st
for k being ( ( ) ( ) Morphism of c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) holds
( ( k : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b7 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) * i1 : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b7 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) = f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b7 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) & k : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b7 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) * i2 : ( ( ) ( ) Morphism of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Morphism of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b7 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) = g : ( ( ) ( ) Morphism of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b7 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ) iff h : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b7 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) = k : ( ( ) ( ) Morphism of b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b7 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ) ) ) ) ;

theorem :: CAT_3:82
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for a, c, b being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for i1 being ( ( ) ( ) Morphism of a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) )
for i2 being ( ( ) ( ) Morphism of b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st Hom (a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & Hom (b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt i1 : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ,i2 : ( ( ) ( ) Morphism of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) & Hom (a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) & Hom (b : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,a : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) <> {} : ( ( ) ( empty ) set ) holds
( i1 : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is coretraction & i2 : ( ( ) ( ) Morphism of b4 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is coretraction ) ;

theorem :: CAT_3:83
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for i1, i2, h being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt i1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,i2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) & h : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) in Hom (c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( non empty ) Element of K19( the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) : ( ( ) ( ) set ) ) & h : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) (*) i1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = i1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) & h : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) (*) i2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = i2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) holds
h : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) = id c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) ;

theorem :: CAT_3:84
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c, d being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for i1, i2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) )
for f being ( ( ) ( ) Morphism of c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) st c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt i1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,i2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) & dom f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) & cod f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) = d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) & f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) is invertible holds
d : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) (*) i1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,f : ( ( ) ( ) Morphism of b2 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ,b3 : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) ) (*) i2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier' of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ;

theorem :: CAT_3:85
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for i1, i2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt i1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,i2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) & dom i2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) is initial holds
dom i1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) are_isomorphic ;

theorem :: CAT_3:86
for C being ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category)
for c being ( ( ) ( ) Object of ( ( ) ( non empty ) set ) )
for i1, i2 being ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) st c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) is_a_coproduct_wrt i1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) ,i2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) & dom i1 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) is initial holds
dom i2 : ( ( ) ( ) Morphism of ( ( ) ( non empty ) set ) ) : ( ( ) ( ) Element of the carrier of b1 : ( ( non empty non void Category-like V65() V66() V67() with_identities ) ( non empty non void V52() Category-like V65() V66() V67() with_identities ) Category) : ( ( ) ( non empty ) set ) ) ,c : ( ( ) ( ) Object of ( ( ) ( non empty ) set ) ) are_isomorphic ;