:: PRALG_2 semantic presentation
:: deftheorem Def1 defines with_common_domain PRALG_2:def 1 :
theorem Th1: :: PRALG_2:1
:: deftheorem Def2 defines DOM PRALG_2:def 2 :
theorem Th2: :: PRALG_2:2
:: deftheorem Def3 PRALG_2:def 3 :
canceled;
:: deftheorem Def4 PRALG_2:def 4 :
canceled;
:: deftheorem Def5 PRALG_2:def 5 :
canceled;
:: deftheorem Def6 defines Commute PRALG_2:def 6 :
theorem Th3: :: PRALG_2:3
canceled;
theorem Th4: :: PRALG_2:4
canceled;
theorem Th5: :: PRALG_2:5
canceled;
theorem Th6: :: PRALG_2:6
canceled;
theorem Th7: :: PRALG_2:7
canceled;
theorem Th8: :: PRALG_2:8
:: deftheorem Def7 PRALG_2:def 7 :
canceled;
:: deftheorem Def8 defines Frege PRALG_2:def 8 :
theorem Th9: :: PRALG_2:9
definition
let c
1 be non
empty set ;
let c
2 be
set ;
let c
3, c
4 be
V2 ManySortedSet of c
1;
let c
5 be
Function of c
2,c
1 * ;
let c
6 be
Function of c
2,c
1;
let c
7 be
set ;
let c
8 be
Function of
((c3 # ) * c5) . c
7,
(c3 * c6) . c
7;
let c
9 be
Function of
((c4 # ) * c5) . c
7,
(c4 * c6) . c
7;
assume E6:
c
7 in c
2
;
canceled;func [[:c8,c9:]] -> Function of
(([|a3,a4|] # ) * a5) . a
7,
([|a3,a4|] * a6) . a
7 means :: PRALG_2:def 10
for b
1 being
Function holds
( b
1 in (([|a3,a4|] # ) * a5) . a
7 implies a
10 . b
1 = [(a8 . (pr1 b1)),(a9 . (pr2 b1))] );
existence
ex b1 being Function of (([|c3,c4|] # ) * c5) . c7,([|c3,c4|] * c6) . c7 st
for b2 being Function holds
( b2 in (([|c3,c4|] # ) * c5) . c7 implies b1 . b2 = [(c8 . (pr1 b2)),(c9 . (pr2 b2))] )
uniqueness
for b1, b2 being Function of (([|c3,c4|] # ) * c5) . c7,([|c3,c4|] * c6) . c7 holds
( ( for b3 being Function holds
( b3 in (([|c3,c4|] # ) * c5) . c7 implies b1 . b3 = [(c8 . (pr1 b3)),(c9 . (pr2 b3))] ) ) & ( for b3 being Function holds
( b3 in (([|c3,c4|] # ) * c5) . c7 implies b2 . b3 = [(c8 . (pr1 b3)),(c9 . (pr2 b3))] ) ) implies b1 = b2 )
end;
:: deftheorem Def9 PRALG_2:def 9 :
canceled;
:: deftheorem Def10 defines [[: PRALG_2:def 10 :
for b
1 being non
empty set for b
2 being
set for b
3, b
4 being
V2 ManySortedSet of b
1for b
5 being
Function of b
2,b
1 * for b
6 being
Function of b
2,b
1for b
7 being
set for b
8 being
Function of
((b3 # ) * b5) . b
7,
(b3 * b6) . b
7for b
9 being
Function of
((b4 # ) * b5) . b
7,
(b4 * b6) . b
7 holds
( b
7 in b
2 implies for b
10 being
Function of
(([|b3,b4|] # ) * b5) . b
7,
([|b3,b4|] * b6) . b
7 holds
( b
10 = [[:b8,b9:]] iff for b
11 being
Function holds
( b
11 in (([|b3,b4|] # ) * b5) . b
7 implies b
10 . b
11 = [(b8 . (pr1 b11)),(b9 . (pr2 b11))] ) ) );
definition
let c
1 be non
empty set ;
let c
2 be
set ;
let c
3, c
4 be
V2 ManySortedSet of c
1;
let c
5 be
Function of c
2,c
1 * ;
let c
6 be
Function of c
2,c
1;
let c
7 be
ManySortedFunction of
(c3 # ) * c
5,c
3 * c
6;
let c
8 be
ManySortedFunction of
(c4 # ) * c
5,c
4 * c
6;
func [[:c7,c8:]] -> ManySortedFunction of
([|a3,a4|] # ) * a
5,
[|a3,a4|] * a
6 means :: PRALG_2:def 11
for b
1 being
set holds
( b
1 in a
2 implies for b
2 being
Function of
((a3 # ) * a5) . b
1,
(a3 * a6) . b
1for b
3 being
Function of
((a4 # ) * a5) . b
1,
(a4 * a6) . b
1 holds
( b
2 = a
7 . b
1 & b
3 = a
8 . b
1 implies a
9 . b
1 = [[:b2,b3:]] ) );
existence
ex b1 being ManySortedFunction of ([|c3,c4|] # ) * c5,[|c3,c4|] * c6 st
for b2 being set holds
( b2 in c2 implies for b3 being Function of ((c3 # ) * c5) . b2,(c3 * c6) . b2
for b4 being Function of ((c4 # ) * c5) . b2,(c4 * c6) . b2 holds
( b3 = c7 . b2 & b4 = c8 . b2 implies b1 . b2 = [[:b3,b4:]] ) )
uniqueness
for b1, b2 being ManySortedFunction of ([|c3,c4|] # ) * c5,[|c3,c4|] * c6 holds
( ( for b3 being set holds
( b3 in c2 implies for b4 being Function of ((c3 # ) * c5) . b3,(c3 * c6) . b3
for b5 being Function of ((c4 # ) * c5) . b3,(c4 * c6) . b3 holds
( b4 = c7 . b3 & b5 = c8 . b3 implies b1 . b3 = [[:b4,b5:]] ) ) ) & ( for b3 being set holds
( b3 in c2 implies for b4 being Function of ((c3 # ) * c5) . b3,(c3 * c6) . b3
for b5 being Function of ((c4 # ) * c5) . b3,(c4 * c6) . b3 holds
( b4 = c7 . b3 & b5 = c8 . b3 implies b2 . b3 = [[:b4,b5:]] ) ) ) implies b1 = b2 )
end;
:: deftheorem Def11 defines [[: PRALG_2:def 11 :
for b
1 being non
empty set for b
2 being
set for b
3, b
4 being
V2 ManySortedSet of b
1for b
5 being
Function of b
2,b
1 * for b
6 being
Function of b
2,b
1for b
7 being
ManySortedFunction of
(b3 # ) * b
5,b
3 * b
6for b
8 being
ManySortedFunction of
(b4 # ) * b
5,b
4 * b
6for b
9 being
ManySortedFunction of
([|b3,b4|] # ) * b
5,
[|b3,b4|] * b
6 holds
( b
9 = [[:b7,b8:]] iff for b
10 being
set holds
( b
10 in b
2 implies for b
11 being
Function of
((b3 # ) * b5) . b
10,
(b3 * b6) . b
10for b
12 being
Function of
((b4 # ) * b5) . b
10,
(b4 * b6) . b
10 holds
( b
11 = b
7 . b
10 & b
12 = b
8 . b
10 implies b
9 . b
10 = [[:b11,b12:]] ) ) );
:: deftheorem Def12 defines MSAlgebra-Family PRALG_2:def 12 :
:: deftheorem Def13 defines |. PRALG_2:def 13 :
:: deftheorem Def14 defines |. PRALG_2:def 14 :
theorem Th10: :: PRALG_2:10
theorem Th11: :: PRALG_2:11
:: deftheorem Def15 defines [: PRALG_2:def 15 :
:: deftheorem Def16 defines Carrier PRALG_2:def 16 :
:: deftheorem Def17 defines SORTS PRALG_2:def 17 :
:: deftheorem Def18 defines OPER PRALG_2:def 18 :
theorem Th12: :: PRALG_2:12
theorem Th13: :: PRALG_2:13
:: deftheorem Def19 defines ?. PRALG_2:def 19 :
theorem Th14: :: PRALG_2:14
theorem Th15: :: PRALG_2:15
theorem Th16: :: PRALG_2:16
theorem Th17: :: PRALG_2:17
theorem Th18: :: PRALG_2:18
definition
let c
1 be
set ;
let c
2 be non
empty non
void ManySortedSign ;
let c
3 be
MSAlgebra-Family of c
1,c
2;
func OPS c
3 -> ManySortedFunction of
((SORTS a3) # ) * the
Arity of a
2,
(SORTS a3) * the
ResultSort of a
2 means :: PRALG_2:def 20
for b
1 being
OperSymbol of a
2 holds a
4 . b
1 = IFEQ (the_arity_of b1),
{} ,
(commute (a3 ?. b1)),
(Commute (Frege (a3 ?. b1))) if a
1 <> {} otherwise verum;
existence
( not ( c1 <> {} & ( for b1 being ManySortedFunction of ((SORTS c3) # ) * the Arity of c2,(SORTS c3) * the ResultSort of c2 holds
not for b2 being OperSymbol of c2 holds b1 . b2 = IFEQ (the_arity_of b2),{} ,(commute (c3 ?. b2)),(Commute (Frege (c3 ?. b2))) ) ) & not ( not c1 <> {} & ( for b1 being ManySortedFunction of ((SORTS c3) # ) * the Arity of c2,(SORTS c3) * the ResultSort of c2 holds
not verum ) ) )
uniqueness
for b1, b2 being ManySortedFunction of ((SORTS c3) # ) * the Arity of c2,(SORTS c3) * the ResultSort of c2 holds
( ( c1 <> {} & ( for b3 being OperSymbol of c2 holds b1 . b3 = IFEQ (the_arity_of b3),{} ,(commute (c3 ?. b3)),(Commute (Frege (c3 ?. b3))) ) & ( for b3 being OperSymbol of c2 holds b2 . b3 = IFEQ (the_arity_of b3),{} ,(commute (c3 ?. b3)),(Commute (Frege (c3 ?. b3))) ) implies b1 = b2 ) & ( not c1 <> {} implies b1 = b2 ) )
correctness
consistency
for b1 being ManySortedFunction of ((SORTS c3) # ) * the Arity of c2,(SORTS c3) * the ResultSort of c2 holds
verum;
;
end;
:: deftheorem Def20 defines OPS PRALG_2:def 20 :
:: deftheorem Def21 defines product PRALG_2:def 21 :
theorem Th19: :: PRALG_2:19
canceled;
theorem Th20: :: PRALG_2:20