:: MSUALG_6 semantic presentation
theorem Th1: :: MSUALG_6:1
theorem Th2: :: MSUALG_6:2
:: deftheorem Def1 defines feasible MSUALG_6:def 1 :
theorem Th3: :: MSUALG_6:3
:: deftheorem Def2 defines Endomorphism MSUALG_6:def 2 :
theorem Th4: :: MSUALG_6:4
theorem Th5: :: MSUALG_6:5
theorem Th6: :: MSUALG_6:6
:: deftheorem Def3 defines TranslationRel MSUALG_6:def 3 :
theorem Th7: :: MSUALG_6:7
theorem Th8: :: MSUALG_6:8
theorem Th9: :: MSUALG_6:9
for b
1 being non
empty non
void ManySortedSign for b
2 being
OperSymbol of b
1for b
3 being
Nat holds
( b
3 in dom (the_arity_of b2) implies for b
4, b
5 being
MSAlgebra of b
1for b
6 being
ManySortedFunction of b
4,b
5for b
7, b
8 being
Element of
Args b
2,b
4 holds
( b
7 in Args b
2,b
4 & b
6 # b
7 in Args b
2,b
5 implies for b
9, b
10, b
11 being
Function holds
( b
9 = b
7 & b
10 = b
6 # b
7 & b
11 = b
6 # b
8 implies for b
12 being
Element of b
4,
((the_arity_of b2) /. b3) holds
( b
8 = b
9 +* b
3,b
12 implies ( b
11 . b
3 = (b6 . ((the_arity_of b2) /. b3)) . b
12 & b
6 # b
8 = b
10 +* b
3,
(b11 . b3) ) ) ) ) )
definition
let c
1 be non
empty non
void ManySortedSign ;
let c
2 be
OperSymbol of c
1;
let c
3 be
Nat;
let c
4 be
MSAlgebra of c
1;
let c
5 be
Function;
func transl c
2,c
3,c
5,c
4 -> Function means :
Def4:
:: MSUALG_6:def 4
(
dom a
6 = the
Sorts of a
4 . ((the_arity_of a2) /. a3) & ( for b
1 being
set holds
( b
1 in the
Sorts of a
4 . ((the_arity_of a2) /. a3) implies a
6 . b
1 = (Den a2,a4) . (a5 +* a3,b1) ) ) );
existence
ex b1 being Function st
( dom b1 = the Sorts of c4 . ((the_arity_of c2) /. c3) & ( for b2 being set holds
( b2 in the Sorts of c4 . ((the_arity_of c2) /. c3) implies b1 . b2 = (Den c2,c4) . (c5 +* c3,b2) ) ) )
uniqueness
for b1, b2 being Function holds
( dom b1 = the Sorts of c4 . ((the_arity_of c2) /. c3) & ( for b3 being set holds
( b3 in the Sorts of c4 . ((the_arity_of c2) /. c3) implies b1 . b3 = (Den c2,c4) . (c5 +* c3,b3) ) ) & dom b2 = the Sorts of c4 . ((the_arity_of c2) /. c3) & ( for b3 being set holds
( b3 in the Sorts of c4 . ((the_arity_of c2) /. c3) implies b2 . b3 = (Den c2,c4) . (c5 +* c3,b3) ) ) implies b1 = b2 )
end;
:: deftheorem Def4 defines transl MSUALG_6:def 4 :
theorem Th10: :: MSUALG_6:10
:: deftheorem Def5 defines is_e.translation_of MSUALG_6:def 5 :
theorem Th11: :: MSUALG_6:11
theorem Th12: :: MSUALG_6:12
theorem Th13: :: MSUALG_6:13
theorem Th14: :: MSUALG_6:14
definition
let c
1 be non
empty non
void ManySortedSign ;
let c
2 be
non-empty MSAlgebra of c
1;
let c
3, c
4 be
SortSymbol of c
1;
assume E19:
TranslationRel c
1 reduces c
3,c
4
;
mode Translation of c
2,c
3,c
4 -> Function of the
Sorts of a
2 . a
3,the
Sorts of a
2 . a
4 means :
Def6:
:: MSUALG_6:def 6
ex b
1 being
RedSequence of
TranslationRel a
1ex b
2 being
Function-yielding FinSequence st
( a
5 = compose b
2,
(the Sorts of a2 . a3) &
len b
1 = (len b2) + 1 & a
3 = b
1 . 1 & a
4 = b
1 . (len b1) & ( for b
3 being
Natfor b
4 being
Functionfor b
5, b
6 being
SortSymbol of a
1 holds
( b
3 in dom b
2 & b
4 = b
2 . b
3 & b
5 = b
1 . b
3 & b
6 = b
1 . (b3 + 1) implies b
4 is_e.translation_of a
2,b
5,b
6 ) ) );
existence
ex b1 being Function of the Sorts of c2 . c3,the Sorts of c2 . c4ex b2 being RedSequence of TranslationRel c1ex b3 being Function-yielding FinSequence st
( b1 = compose b3,(the Sorts of c2 . c3) & len b2 = (len b3) + 1 & c3 = b2 . 1 & c4 = b2 . (len b2) & ( for b4 being Nat
for b5 being Function
for b6, b7 being SortSymbol of c1 holds
( b4 in dom b3 & b5 = b3 . b4 & b6 = b2 . b4 & b7 = b2 . (b4 + 1) implies b5 is_e.translation_of c2,b6,b7 ) ) )
end;
:: deftheorem Def6 defines Translation MSUALG_6:def 6 :
theorem Th15: :: MSUALG_6:15
theorem Th16: :: MSUALG_6:16
theorem Th17: :: MSUALG_6:17
theorem Th18: :: MSUALG_6:18
for b
1 being non
empty non
void ManySortedSign for b
2 being
non-empty MSAlgebra of b
1for b
3, b
4, b
5 being
SortSymbol of b
1 holds
(
TranslationRel b
1 reduces b
3,b
4 &
TranslationRel b
1 reduces b
4,b
5 implies for b
6 being
Translation of b
2,b
3,b
4for b
7 being
Translation of b
2,b
4,b
5 holds
b
7 * b
6 is
Translation of b
2,b
3,b
5 )
theorem Th19: :: MSUALG_6:19
theorem Th20: :: MSUALG_6:20
scheme :: MSUALG_6:sch 1
s1{ F
1()
-> non
empty non
void ManySortedSign , F
2()
-> non-empty MSAlgebra of F
1(), P
1[
set ,
set ,
set ] } :
provided
E24:
for b
1 being
SortSymbol of F
1() holds P
1[
id (the Sorts of F2() . b1),b
1,b
1]
and
E25:
for b
1, b
2, b
3 being
SortSymbol of F
1() holds
(
TranslationRel F
1()
reduces b
1,b
2 implies for b
4 being
Translation of F
2(),b
1,b
2 holds
( P
1[b
4,b
1,b
2] implies for b
5 being
Function holds
( b
5 is_e.translation_of F
2(),b
2,b
3 implies P
1[b
5 * b
4,b
1,b
3] ) ) )
theorem Th21: :: MSUALG_6:21
for b
1 being non
empty non
void ManySortedSign for b
2, b
3 being
non-empty MSAlgebra of b
1for b
4 being
ManySortedFunction of b
2,b
3 holds
( b
4 is_homomorphism b
2,b
3 implies for b
5 being
OperSymbol of b
1for b
6 being
Nat holds
( b
6 in dom (the_arity_of b5) implies for b
7 being
Element of
Args b
5,b
2 holds
(b4 . (the_result_sort_of b5)) * (transl b5,b6,b7,b2) = (transl b5,b6,(b4 # b7),b3) * (b4 . ((the_arity_of b5) /. b6)) ) )
theorem Th22: :: MSUALG_6:22
theorem Th23: :: MSUALG_6:23
theorem Th24: :: MSUALG_6:24
theorem Th25: :: MSUALG_6:25
theorem Th26: :: MSUALG_6:26
definition
let c
1 be non
empty non
void ManySortedSign ;
let c
2 be
MSAlgebra of c
1;
let c
3 be
ManySortedRelation of c
2;
attr a
3 is
compatible means :
Def7:
:: MSUALG_6:def 7
for b
1 being
OperSymbol of a
1for b
2, b
3 being
Function holds
( b
2 in Args b
1,a
2 & b
3 in Args b
1,a
2 & ( for b
4 being
Nat holds
( b
4 in dom (the_arity_of b1) implies
[(b2 . b4),(b3 . b4)] in a
3 . ((the_arity_of b1) /. b4) ) ) implies
[((Den b1,a2) . b2),((Den b1,a2) . b3)] in a
3 . (the_result_sort_of b1) );
attr a
3 is
invariant means :
Def8:
:: MSUALG_6:def 8
for b
1, b
2 being
SortSymbol of a
1for b
3 being
Function holds
( b
3 is_e.translation_of a
2,b
1,b
2 implies for b
4, b
5 being
set holds
(
[b4,b5] in a
3 . b
1 implies
[(b3 . b4),(b3 . b5)] in a
3 . b
2 ) );
attr a
3 is
stable means :
Def9:
:: MSUALG_6:def 9
for b
1 being
Endomorphism of a
2for b
2 being
SortSymbol of a
1for b
3, b
4 being
set holds
(
[b3,b4] in a
3 . b
2 implies
[((b1 . b2) . b3),((b1 . b2) . b4)] in a
3 . b
2 );
end;
:: deftheorem Def7 defines compatible MSUALG_6:def 7 :
:: deftheorem Def8 defines invariant MSUALG_6:def 8 :
:: deftheorem Def9 defines stable MSUALG_6:def 9 :
theorem Th27: :: MSUALG_6:27
theorem Th28: :: MSUALG_6:28
:: deftheorem Def10 defines id MSUALG_6:def 10 :
scheme :: MSUALG_6:sch 4
s4{ F
1()
-> non
empty non
void ManySortedSign , F
2()
-> non-empty MSAlgebra of F
1(), P
1[
set ,
set ,
set ], P
2[
set ], F
3()
-> ManySortedRelation of F
2(), F
4()
-> ManySortedRelation of F
2() } :
( P
2[F
4()] & F
3()
c= F
4() & ( for b
1 being
ManySortedRelation of F
2() holds
( P
2[b
1] & F
3()
c= b
1 implies F
4()
c= b
1 ) ) )
provided
E33:
for b
1 being
ManySortedRelation of F
2() holds
( P
2[b
1] iff for b
2, b
3 being
SortSymbol of F
1()
for b
4 being
Function of the
Sorts of F
2()
. b
2,the
Sorts of F
2()
. b
3 holds
( P
1[b
4,b
2,b
3] implies for b
5, b
6 being
set holds
(
[b5,b6] in b
1 . b
2 implies
[(b4 . b5),(b4 . b6)] in b
1 . b
3 ) ) )
and
E34:
for b
1, b
2, b
3 being
SortSymbol of F
1()
for b
4 being
Function of the
Sorts of F
2()
. b
1,the
Sorts of F
2()
. b
2for b
5 being
Function of the
Sorts of F
2()
. b
2,the
Sorts of F
2()
. b
3 holds
( P
1[b
4,b
1,b
2] & P
1[b
5,b
2,b
3] implies P
1[b
5 * b
4,b
1,b
3] )
and
E35:
for b
1 being
SortSymbol of F
1() holds P
1[
id (the Sorts of F2() . b1),b
1,b
1]
and
E36:
for b
1 being
SortSymbol of F
1()
for b
2, b
3 being
Element of F
2(),b
1 holds
(
[b2,b3] in F
4()
. b
1 iff ex b
4 being
SortSymbol of F
1()ex b
5 being
Function of the
Sorts of F
2()
. b
4,the
Sorts of F
2()
. b
1ex b
6, b
7 being
Element of F
2(),b
4 st
( P
1[b
5,b
4,b
1] &
[b6,b7] in F
3()
. b
4 & b
2 = b
5 . b
6 & b
3 = b
5 . b
7 ) )
E33:
now
let c
1 be non
empty non
void ManySortedSign ;
let c
2 be
non-empty MSAlgebra of c
1;
let c
3, c
4 be
ManySortedRelation of c
2;
defpred S
1[
ManySortedRelation of c
2] means a
1 is
invariant;
defpred S
2[
Function,
SortSymbol of c
1,
SortSymbol of c
1] means (
TranslationRel c
1 reduces a
2,a
3 & a
1 is
Translation of c
2,a
2,a
3 );
assume E34:
for b
1 being
SortSymbol of c
1for b
2, b
3 being
Element of c
2,b
1 holds
(
[b2,b3] in c
4 . b
1 iff ex b
4 being
SortSymbol of c
1ex b
5 being
Function of the
Sorts of c
2 . b
4,the
Sorts of c
2 . b
1ex b
6, b
7 being
Element of c
2,b
4 st
( S
2[b
5,b
4,b
1] &
[b6,b7] in c
3 . b
4 & b
2 = b
5 . b
6 & b
3 = b
5 . b
7 ) )
;
E35:
now
let c
5 be
ManySortedRelation of c
2;
thus
( S
1[c
5] implies for b
1, b
2 being
SortSymbol of c
1for b
3 being
Function of the
Sorts of c
2 . b
1,the
Sorts of c
2 . b
2 holds
( S
2[b
3,b
1,b
2] implies for b
4, b
5 being
set holds
(
[b4,b5] in c
5 . b
1 implies
[(b3 . b4),(b3 . b5)] in c
5 . b
2 ) ) )
by Th28;
assume
for b
1, b
2 being
SortSymbol of c
1for b
3 being
Function of the
Sorts of c
2 . b
1,the
Sorts of c
2 . b
2 holds
( S
2[b
3,b
1,b
2] implies for b
4, b
5 being
set holds
(
[b4,b5] in c
5 . b
1 implies
[(b3 . b4),(b3 . b5)] in c
5 . b
2 ) )
;
then
for b
1, b
2 being
SortSymbol of c
1 holds
(
TranslationRel c
1 reduces b
1,b
2 implies for b
3 being
Translation of c
2,b
1,b
2for b
4, b
5 being
set holds
(
[b4,b5] in c
5 . b
1 implies
[(b3 . b4),(b3 . b5)] in c
5 . b
2 ) )
;
hence
S
1[c
5]
by Th28;
end;
E36:
for b
1, b
2, b
3 being
SortSymbol of c
1for b
4 being
Function of the
Sorts of c
2 . b
1,the
Sorts of c
2 . b
2for b
5 being
Function of the
Sorts of c
2 . b
2,the
Sorts of c
2 . b
3 holds
( S
2[b
4,b
1,b
2] & S
2[b
5,b
2,b
3] implies S
2[b
5 * b
4,b
1,b
3] )
by Th18, REWRITE1:17;
E37:
for b
1 being
SortSymbol of c
1 holds
S
2[
id (the Sorts of c2 . b1),b
1,b
1]
by Th16, REWRITE1:13;
thus
( S
1[c
4] & c
3 c= c
4 & ( for b
1 being
ManySortedRelation of c
2 holds
( S
1[b
1] & c
3 c= b
1 implies c
4 c= b
1 ) ) )
from MSUALG_6:sch 4(E35, E36, E37, E34);
end;
:: deftheorem Def11 defines InvCl MSUALG_6:def 11 :
theorem Th29: :: MSUALG_6:29
theorem Th30: :: MSUALG_6:30
E37:
now
let c
1 be non
empty non
void ManySortedSign ;
let c
2 be
non-empty MSAlgebra of c
1;
let c
3, c
4 be
ManySortedRelation of c
2;
defpred S
1[
ManySortedRelation of c
2] means a
1 is
stable;
defpred S
2[
Function,
SortSymbol of c
1,
SortSymbol of c
1] means ( a
2 = a
3 & ex b
1 being
Endomorphism of c
2 st a
1 = b
1 . a
2 );
assume E38:
for b
1 being
SortSymbol of c
1for b
2, b
3 being
Element of c
2,b
1 holds
(
[b2,b3] in c
4 . b
1 iff ex b
4 being
SortSymbol of c
1ex b
5 being
Function of the
Sorts of c
2 . b
4,the
Sorts of c
2 . b
1ex b
6, b
7 being
Element of c
2,b
4 st
( S
2[b
5,b
4,b
1] &
[b6,b7] in c
3 . b
4 & b
2 = b
5 . b
6 & b
3 = b
5 . b
7 ) )
;
E39:
for b
1 being
ManySortedRelation of c
2 holds
( S
1[b
1] iff for b
2, b
3 being
SortSymbol of c
1for b
4 being
Function of the
Sorts of c
2 . b
2,the
Sorts of c
2 . b
3 holds
( S
2[b
4,b
2,b
3] implies for b
5, b
6 being
set holds
(
[b5,b6] in b
1 . b
2 implies
[(b4 . b5),(b4 . b6)] in b
1 . b
3 ) ) )
proof
let c
5 be
ManySortedRelation of c
2;
thus
( c
5 is
stable implies for b
1, b
2 being
SortSymbol of c
1for b
3 being
Function of the
Sorts of c
2 . b
1,the
Sorts of c
2 . b
2 holds
( b
1 = b
2 & ex b
4 being
Endomorphism of c
2 st b
3 = b
4 . b
1 implies for b
4, b
5 being
set holds
(
[b4,b5] in c
5 . b
1 implies
[(b3 . b4),(b3 . b5)] in c
5 . b
2 ) ) )
by Def9;
assume E40:
for b
1, b
2 being
SortSymbol of c
1for b
3 being
Function of the
Sorts of c
2 . b
1,the
Sorts of c
2 . b
2 holds
( S
2[b
3,b
1,b
2] implies for b
4, b
5 being
set holds
(
[b4,b5] in c
5 . b
1 implies
[(b3 . b4),(b3 . b5)] in c
5 . b
2 ) )
;
thus
c
5 is
stable
end;
E40:
for b
1, b
2, b
3 being
SortSymbol of c
1for b
4 being
Function of the
Sorts of c
2 . b
1,the
Sorts of c
2 . b
2for b
5 being
Function of the
Sorts of c
2 . b
2,the
Sorts of c
2 . b
3 holds
( S
2[b
4,b
1,b
2] & S
2[b
5,b
2,b
3] implies S
2[b
5 * b
4,b
1,b
3] )
E41:
for b
1 being
SortSymbol of c
1 holds
S
2[
id (the Sorts of c2 . b1),b
1,b
1]
thus
( S
1[c
4] & c
3 c= c
4 & ( for b
1 being
ManySortedRelation of c
2 holds
( S
1[b
1] & c
3 c= b
1 implies c
4 c= b
1 ) ) )
from MSUALG_6:sch 4(E39, E40, E41, E38);
end;
:: deftheorem Def12 defines StabCl MSUALG_6:def 12 :
theorem Th31: :: MSUALG_6:31
theorem Th32: :: MSUALG_6:32
:: deftheorem Def13 defines TRS MSUALG_6:def 13 :
theorem Th33: :: MSUALG_6:33
theorem Th34: :: MSUALG_6:34
theorem Th35: :: MSUALG_6:35
theorem Th36: :: MSUALG_6:36
theorem Th37: :: MSUALG_6:37
theorem Th38: :: MSUALG_6:38
theorem Th39: :: MSUALG_6:39
theorem Th40: :: MSUALG_6:40
theorem Th41: :: MSUALG_6:41
theorem Th42: :: MSUALG_6:42
:: deftheorem Def14 defines EqCl MSUALG_6:def 14 :
theorem Th43: :: MSUALG_6:43
theorem Th44: :: MSUALG_6:44
theorem Th45: :: MSUALG_6:45
theorem Th46: :: MSUALG_6:46
theorem Th47: :: MSUALG_6:47
theorem Th48: :: MSUALG_6:48
theorem Th49: :: MSUALG_6:49
theorem Th50: :: MSUALG_6:50
theorem Th51: :: MSUALG_6:51
:: deftheorem Def15 defines EqTh MSUALG_6:def 15 :
theorem Th52: :: MSUALG_6:52
theorem Th53: :: MSUALG_6:53
theorem Th54: :: MSUALG_6:54