:: PRALG_1 semantic presentation
theorem Th1: :: PRALG_1:1
:: deftheorem Def1 defines pr1 PRALG_1:def 1 :
:: deftheorem Def2 defines pr2 PRALG_1:def 2 :
definition
let c
1, c
2 be non
empty set ;
let c
3 be non
empty homogeneous quasi_total PartFunc of c
1 * ,c
1;
let c
4 be non
empty homogeneous quasi_total PartFunc of c
2 * ,c
2;
assume E4:
arity c
3 = arity c
4
;
func [[:c3,c4:]] -> non
empty homogeneous quasi_total PartFunc of
[:a1,a2:] * ,
[:a1,a2:] means :
Def3:
:: PRALG_1:def 3
(
dom a
5 = (arity a3) -tuples_on [:a1,a2:] & ( for b
1 being
FinSequence of
[:a1,a2:] holds
( b
1 in dom a
5 implies a
5 . b
1 = [(a3 . (pr1 b1)),(a4 . (pr2 b1))] ) ) );
existence
ex b1 being non empty homogeneous quasi_total PartFunc of [:c1,c2:] * ,[:c1,c2:] st
( dom b1 = (arity c3) -tuples_on [:c1,c2:] & ( for b2 being FinSequence of [:c1,c2:] holds
( b2 in dom b1 implies b1 . b2 = [(c3 . (pr1 b2)),(c4 . (pr2 b2))] ) ) )
uniqueness
for b1, b2 being non empty homogeneous quasi_total PartFunc of [:c1,c2:] * ,[:c1,c2:] holds
( dom b1 = (arity c3) -tuples_on [:c1,c2:] & ( for b3 being FinSequence of [:c1,c2:] holds
( b3 in dom b1 implies b1 . b3 = [(c3 . (pr1 b3)),(c4 . (pr2 b3))] ) ) & dom b2 = (arity c3) -tuples_on [:c1,c2:] & ( for b3 being FinSequence of [:c1,c2:] holds
( b3 in dom b2 implies b2 . b3 = [(c3 . (pr1 b3)),(c4 . (pr2 b3))] ) ) implies b1 = b2 )
end;
:: deftheorem Def3 defines [[: PRALG_1:def 3 :
for b
1, b
2 being non
empty set for b
3 being non
empty homogeneous quasi_total PartFunc of b
1 * ,b
1for b
4 being non
empty homogeneous quasi_total PartFunc of b
2 * ,b
2 holds
(
arity b
3 = arity b
4 implies for b
5 being non
empty homogeneous quasi_total PartFunc of
[:b1,b2:] * ,
[:b1,b2:] holds
( b
5 = [[:b3,b4:]] iff (
dom b
5 = (arity b3) -tuples_on [:b1,b2:] & ( for b
6 being
FinSequence of
[:b1,b2:] holds
( b
6 in dom b
5 implies b
5 . b
6 = [(b3 . (pr1 b6)),(b4 . (pr2 b6))] ) ) ) ) );
definition
let c
1, c
2 be
Universal_Algebra;
assume E5:
c
1,c
2 are_similar
;
func Opers c
1,c
2 -> PFuncFinSequence of
[:the carrier of a1,the carrier of a2:] means :
Def4:
:: PRALG_1:def 4
(
len a
3 = len the
charact of a
1 & ( for b
1 being
Nat holds
( b
1 in dom a
3 implies for b
2 being non
empty homogeneous quasi_total PartFunc of the
carrier of a
1 * ,the
carrier of a
1for b
3 being non
empty homogeneous quasi_total PartFunc of the
carrier of a
2 * ,the
carrier of a
2 holds
( b
2 = the
charact of a
1 . b
1 & b
3 = the
charact of a
2 . b
1 implies a
3 . b
1 = [[:b2,b3:]] ) ) ) );
existence
ex b1 being PFuncFinSequence of [:the carrier of c1,the carrier of c2:] st
( len b1 = len the charact of c1 & ( for b2 being Nat holds
( b2 in dom b1 implies for b3 being non empty homogeneous quasi_total PartFunc of the carrier of c1 * ,the carrier of c1
for b4 being non empty homogeneous quasi_total PartFunc of the carrier of c2 * ,the carrier of c2 holds
( b3 = the charact of c1 . b2 & b4 = the charact of c2 . b2 implies b1 . b2 = [[:b3,b4:]] ) ) ) )
uniqueness
for b1, b2 being PFuncFinSequence of [:the carrier of c1,the carrier of c2:] holds
( len b1 = len the charact of c1 & ( for b3 being Nat holds
( b3 in dom b1 implies for b4 being non empty homogeneous quasi_total PartFunc of the carrier of c1 * ,the carrier of c1
for b5 being non empty homogeneous quasi_total PartFunc of the carrier of c2 * ,the carrier of c2 holds
( b4 = the charact of c1 . b3 & b5 = the charact of c2 . b3 implies b1 . b3 = [[:b4,b5:]] ) ) ) & len b2 = len the charact of c1 & ( for b3 being Nat holds
( b3 in dom b2 implies for b4 being non empty homogeneous quasi_total PartFunc of the carrier of c1 * ,the carrier of c1
for b5 being non empty homogeneous quasi_total PartFunc of the carrier of c2 * ,the carrier of c2 holds
( b4 = the charact of c1 . b3 & b5 = the charact of c2 . b3 implies b2 . b3 = [[:b4,b5:]] ) ) ) implies b1 = b2 )
end;
:: deftheorem Def4 defines Opers PRALG_1:def 4 :
theorem Th2: :: PRALG_1:2
definition
let c
1, c
2 be
Universal_Algebra;
assume E7:
c
1,c
2 are_similar
;
func [:c1,c2:] -> strict Universal_Algebra equals :
Def5:
:: PRALG_1:def 5
UAStr(#
[:the carrier of a1,the carrier of a2:],
(Opers a1,a2) #);
coherence
UAStr(# [:the carrier of c1,the carrier of c2:],(Opers c1,c2) #) is strict Universal_Algebra
by E7, Th2;
end;
:: deftheorem Def5 defines [: PRALG_1:def 5 :
definition
let c
1, c
2 be non
empty set ;
func Inv c
1,c
2 -> Function of
[:a1,a2:],
[:a2,a1:] means :
Def6:
:: PRALG_1:def 6
for b
1 being
Element of
[:a1,a2:] holds a
3 . b
1 = [(b1 `2 ),(b1 `1 )];
existence
ex b1 being Function of [:c1,c2:],[:c2,c1:] st
for b2 being Element of [:c1,c2:] holds b1 . b2 = [(b2 `2 ),(b2 `1 )]
uniqueness
for b1, b2 being Function of [:c1,c2:],[:c2,c1:] holds
( ( for b3 being Element of [:c1,c2:] holds b1 . b3 = [(b3 `2 ),(b3 `1 )] ) & ( for b3 being Element of [:c1,c2:] holds b2 . b3 = [(b3 `2 ),(b3 `1 )] ) implies b1 = b2 )
end;
:: deftheorem Def6 defines Inv PRALG_1:def 6 :
theorem Th3: :: PRALG_1:3
theorem Th4: :: PRALG_1:4
theorem Th5: :: PRALG_1:5
theorem Th6: :: PRALG_1:6
theorem Th7: :: PRALG_1:7
theorem Th8: :: PRALG_1:8
:: deftheorem Def7 defines TrivialOp PRALG_1:def 7 :
theorem Th9: :: PRALG_1:9
:: deftheorem Def8 defines TrivialOps PRALG_1:def 8 :
theorem Th10: :: PRALG_1:10
theorem Th11: :: PRALG_1:11
:: deftheorem Def9 defines Trivial_Algebra PRALG_1:def 9 :
:: deftheorem Def10 defines Univ_Alg-yielding PRALG_1:def 10 :
:: deftheorem Def11 defines 1-sorted-yielding PRALG_1:def 11 :
:: deftheorem Def12 defines equal-signature PRALG_1:def 12 :
:: deftheorem Def13 defines Carrier PRALG_1:def 13 :
:: deftheorem Def14 defines ComSign PRALG_1:def 14 :
:: deftheorem Def15 defines ManySortedOperation PRALG_1:def 15 :
:: deftheorem Def16 defines equal-arity PRALG_1:def 16 :
theorem Th12: :: PRALG_1:12
:: deftheorem Def17 defines .. PRALG_1:def 17 :
:: deftheorem Def18 defines .. PRALG_1:def 18 :
:: deftheorem Def19 defines ComAr PRALG_1:def 19 :
:: deftheorem Def20 defines EmptySeq PRALG_1:def 20 :
:: deftheorem Def21 defines [[: PRALG_1:def 21 :
:: deftheorem Def22 defines ProdOp PRALG_1:def 22 :
:: deftheorem Def23 defines ProdOpSeq PRALG_1:def 23 :
:: deftheorem Def24 defines ProdUnivAlg PRALG_1:def 24 :