Article MSUALG_6, MML version 4.99.1005
:: MSUALG_6:modenot 1
definition
let a1 be non empty ManySortedSign;
let a2 be MSAlgebra over a1;
let a3 be Element of the carrier of a1;
mode Element of a2,a3 is Element of (the Sorts of a2) . a3;
end;
:: MSUALG_6:funcnot 1 => MSUALG_6:func 1
definition
let a1 be set;
let a2 be ManySortedSet of a1;
let a3, a4 be ManySortedFunction of a2,a2;
redefine func a4 ** a3 -> ManySortedFunction of a2,a2;
end;
:: MSUALG_6:th 1
theorem
for b1 being non empty non void ManySortedSign
for b2 being MSAlgebra over b1
for b3 being Element of the OperSymbols of b1
for b4 being set
st b4 in Args(b3,b2)
holds b4 is Relation-like Function-like set;
:: MSUALG_6:th 2
theorem
for b1 being non empty non void ManySortedSign
for b2 being MSAlgebra over b1
for b3 being Element of the OperSymbols of b1
for b4 being Relation-like Function-like set
st b4 in Args(b3,b2)
holds proj1 b4 = dom the_arity_of b3 &
(for b5 being set
st b5 in dom the_arity_of b3
holds b4 . b5 in (the Sorts of b2) . ((the_arity_of b3) /. b5));
:: MSUALG_6:attrnot 1 => MSUALG_6:attr 1
definition
let a1 be non empty non void ManySortedSign;
let a2 be MSAlgebra over a1;
attr a2 is feasible means
for b1 being Element of the OperSymbols of a1
st Args(b1,a2) <> {}
holds Result(b1,a2) <> {};
end;
:: MSUALG_6:dfs 1
definiens
let a1 be non empty non void ManySortedSign;
let a2 be MSAlgebra over a1;
To prove
a2 is feasible
it is sufficient to prove
thus for b1 being Element of the OperSymbols of a1
st Args(b1,a2) <> {}
holds Result(b1,a2) <> {};
:: MSUALG_6:def 1
theorem
for b1 being non empty non void ManySortedSign
for b2 being MSAlgebra over b1 holds
b2 is feasible(b1)
iff
for b3 being Element of the OperSymbols of b1
st Args(b3,b2) <> {}
holds Result(b3,b2) <> {};
:: MSUALG_6:th 3
theorem
for b1 being non empty non void ManySortedSign
for b2 being Element of the OperSymbols of b1
for b3 being MSAlgebra over b1 holds
Args(b2,b3) <> {}
iff
for b4 being Element of NAT
st b4 in dom the_arity_of b2
holds (the Sorts of b3) . ((the_arity_of b2) /. b4) <> {};
:: MSUALG_6:condreg 1
registration
let a1 be non empty non void ManySortedSign;
cluster non-empty -> feasible (MSAlgebra over a1);
end;
:: MSUALG_6:exreg 1
registration
let a1 be non empty non void ManySortedSign;
cluster non-empty MSAlgebra over a1;
end;
:: MSUALG_6:modenot 2 => MSUALG_6:mode 1
definition
let a1 be non empty non void ManySortedSign;
let a2 be MSAlgebra over a1;
mode Endomorphism of A2 -> ManySortedFunction of the Sorts of a2,the Sorts of a2 means
it is_homomorphism a2,a2;
end;
:: MSUALG_6:dfs 2
definiens
let a1 be non empty non void ManySortedSign;
let a2 be MSAlgebra over a1;
let a3 be ManySortedFunction of the Sorts of a2,the Sorts of a2;
To prove
a3 is Endomorphism of a2
it is sufficient to prove
thus a3 is_homomorphism a2,a2;
:: MSUALG_6:def 2
theorem
for b1 being non empty non void ManySortedSign
for b2 being MSAlgebra over b1
for b3 being ManySortedFunction of the Sorts of b2,the Sorts of b2 holds
b3 is Endomorphism of b2
iff
b3 is_homomorphism b2,b2;
:: MSUALG_6:th 4
theorem
for b1 being non empty non void ManySortedSign
for b2 being MSAlgebra over b1 holds
id the Sorts of b2 is Endomorphism of b2;
:: MSUALG_6:th 5
theorem
for b1 being non empty non void ManySortedSign
for b2 being MSAlgebra over b1
for b3, b4 being ManySortedFunction of the Sorts of b2,the Sorts of b2
for b5 being Element of the OperSymbols of b1
for b6 being Element of Args(b5,b2)
st b6 in Args(b5,b2)
holds b4 # (b3 # b6) = (b4 ** b3) # b6;
:: MSUALG_6:th 6
theorem
for b1 being non empty non void ManySortedSign
for b2 being MSAlgebra over b1
for b3, b4 being Endomorphism of b2 holds
b4 ** b3 is Endomorphism of b2;
:: MSUALG_6:funcnot 2 => MSUALG_6:func 2
definition
let a1 be non empty non void ManySortedSign;
let a2 be MSAlgebra over a1;
let a3, a4 be Endomorphism of a2;
redefine func a4 ** a3 -> Endomorphism of a2;
end;
:: MSUALG_6:funcnot 3 => MSUALG_6:func 3
definition
let a1 be non empty non void ManySortedSign;
func TranslationRel A1 -> Relation of the carrier of a1,the carrier of a1 means
for b1, b2 being Element of the carrier of a1 holds
[b1,b2] in it
iff
ex b3 being Element of the OperSymbols of a1 st
the_result_sort_of b3 = b2 &
(ex b4 being Element of NAT st
b4 in dom the_arity_of b3 & (the_arity_of b3) /. b4 = b1);
end;
:: MSUALG_6:def 3
theorem
for b1 being non empty non void ManySortedSign
for b2 being Relation of the carrier of b1,the carrier of b1 holds
b2 = TranslationRel b1
iff
for b3, b4 being Element of the carrier of b1 holds
[b3,b4] in b2
iff
ex b5 being Element of the OperSymbols of b1 st
the_result_sort_of b5 = b4 &
(ex b6 being Element of NAT st
b6 in dom the_arity_of b5 & (the_arity_of b5) /. b6 = b3);
:: MSUALG_6:th 7
theorem
for b1 being non empty non void ManySortedSign
for b2 being Element of the OperSymbols of b1
for b3 being MSAlgebra over b1
for b4 being Relation-like Function-like set
st b4 in Args(b2,b3)
for b5 being Element of NAT
for b6 being Element of (the Sorts of b3) . ((the_arity_of b2) /. b5) holds
b4 +*(b5,b6) in Args(b2,b3);
:: MSUALG_6:th 8
theorem
for b1 being non empty non void ManySortedSign
for b2, b3 being MSAlgebra over b1
for b4 being ManySortedFunction of the Sorts of b2,the Sorts of b3
for b5 being Element of the OperSymbols of b1
st Args(b5,b2) <> {} & Args(b5,b3) <> {}
for b6 being Element of NAT
st b6 in dom the_arity_of b5
for b7 being Element of (the Sorts of b2) . ((the_arity_of b5) /. b6) holds
(b4 . ((the_arity_of b5) /. b6)) . b7 in (the Sorts of b3) . ((the_arity_of b5) /. b6);
:: MSUALG_6:th 9
theorem
for b1 being non empty non void ManySortedSign
for b2 being Element of the OperSymbols of b1
for b3 being Element of NAT
st b3 in dom the_arity_of b2
for b4, b5 being MSAlgebra over b1
for b6 being ManySortedFunction of the Sorts of b4,the Sorts of b5
for b7, b8 being Element of Args(b2,b4)
st b7 in Args(b2,b4) & b6 # b7 in Args(b2,b5)
for b9, b10, b11 being Relation-like Function-like set
st b9 = b7 & b10 = b6 # b7 & b11 = b6 # b8
for b12 being Element of (the Sorts of b4) . ((the_arity_of b2) /. b3)
st b8 = b9 +*(b3,b12)
holds b11 . b3 = (b6 . ((the_arity_of b2) /. b3)) . b12 &
b6 # b8 = b10 +*(b3,b11 . b3);
:: MSUALG_6:funcnot 4 => MSUALG_6:func 4
definition
let a1 be non empty non void ManySortedSign;
let a2 be Element of the OperSymbols of a1;
let a3 be Element of NAT;
let a4 be MSAlgebra over a1;
let a5 be Relation-like Function-like set;
func transl(A2,A3,A5,A4) -> Relation-like Function-like set means
proj1 it = (the Sorts of a4) . ((the_arity_of a2) /. a3) &
(for b1 being set
st b1 in (the Sorts of a4) . ((the_arity_of a2) /. a3)
holds it . b1 = (Den(a2,a4)) . (a5 +*(a3,b1)));
end;
:: MSUALG_6:def 4
theorem
for b1 being non empty non void ManySortedSign
for b2 being Element of the OperSymbols of b1
for b3 being Element of NAT
for b4 being MSAlgebra over b1
for b5, b6 being Relation-like Function-like set holds
b6 = transl(b2,b3,b5,b4)
iff
proj1 b6 = (the Sorts of b4) . ((the_arity_of b2) /. b3) &
(for b7 being set
st b7 in (the Sorts of b4) . ((the_arity_of b2) /. b3)
holds b6 . b7 = (Den(b2,b4)) . (b5 +*(b3,b7)));
:: MSUALG_6:th 10
theorem
for b1 being non empty non void ManySortedSign
for b2 being Element of the OperSymbols of b1
for b3 being Element of NAT
st b3 in dom the_arity_of b2
for b4 being feasible MSAlgebra over b1
for b5 being Relation-like Function-like set
st b5 in Args(b2,b4)
holds transl(b2,b3,b5,b4) is Function-like quasi_total Relation of (the Sorts of b4) . ((the_arity_of b2) /. b3),(the Sorts of b4) . the_result_sort_of b2;
:: MSUALG_6:prednot 1 => MSUALG_6:pred 1
definition
let a1 be non empty non void ManySortedSign;
let a2, a3 be Element of the carrier of a1;
let a4 be MSAlgebra over a1;
let a5 be Relation-like Function-like set;
pred A5 is_e.translation_of A4,A2,A3 means
ex b1 being Element of the OperSymbols of a1 st
the_result_sort_of b1 = a3 &
(ex b2 being Element of NAT st
b2 in dom the_arity_of b1 &
(the_arity_of b1) /. b2 = a2 &
(ex b3 being Relation-like Function-like set st
b3 in Args(b1,a4) & a5 = transl(b1,b2,b3,a4)));
end;
:: MSUALG_6:dfs 5
definiens
let a1 be non empty non void ManySortedSign;
let a2, a3 be Element of the carrier of a1;
let a4 be MSAlgebra over a1;
let a5 be Relation-like Function-like set;
To prove
a5 is_e.translation_of a4,a2,a3
it is sufficient to prove
thus ex b1 being Element of the OperSymbols of a1 st
the_result_sort_of b1 = a3 &
(ex b2 being Element of NAT st
b2 in dom the_arity_of b1 &
(the_arity_of b1) /. b2 = a2 &
(ex b3 being Relation-like Function-like set st
b3 in Args(b1,a4) & a5 = transl(b1,b2,b3,a4)));
:: MSUALG_6:def 5
theorem
for b1 being non empty non void ManySortedSign
for b2, b3 being Element of the carrier of b1
for b4 being MSAlgebra over b1
for b5 being Relation-like Function-like set holds
b5 is_e.translation_of b4,b2,b3
iff
ex b6 being Element of the OperSymbols of b1 st
the_result_sort_of b6 = b3 &
(ex b7 being Element of NAT st
b7 in dom the_arity_of b6 &
(the_arity_of b6) /. b7 = b2 &
(ex b8 being Relation-like Function-like set st
b8 in Args(b6,b4) & b5 = transl(b6,b7,b8,b4)));
:: MSUALG_6:th 11
theorem
for b1 being non empty non void ManySortedSign
for b2, b3 being Element of the carrier of b1
for b4 being feasible MSAlgebra over b1
for b5 being Relation-like Function-like set
st b5 is_e.translation_of b4,b2,b3
holds b5 is Function-like quasi_total Relation of (the Sorts of b4) . b2,(the Sorts of b4) . b3 &
(the Sorts of b4) . b2 <> {} &
(the Sorts of b4) . b3 <> {};
:: MSUALG_6:th 12
theorem
for b1 being non empty non void ManySortedSign
for b2, b3 being Element of the carrier of b1
for b4 being MSAlgebra over b1
for b5 being Relation-like Function-like set
st b5 is_e.translation_of b4,b2,b3
holds [b2,b3] in TranslationRel b1;
:: MSUALG_6:th 13
theorem
for b1 being non empty non void ManySortedSign
for b2, b3 being Element of the carrier of b1
for b4 being non-empty MSAlgebra over b1
st [b2,b3] in TranslationRel b1
holds ex b5 being Relation-like Function-like set st
b5 is_e.translation_of b4,b2,b3;
:: MSUALG_6:th 14
theorem
for b1 being non empty non void ManySortedSign
for b2 being feasible MSAlgebra over b1
for b3, b4 being Element of the carrier of b1
st TranslationRel b1 reduces b3,b4
for b5 being RedSequence of TranslationRel b1
for b6 being Relation-like Function-like FinSequence-like Function-yielding set
st len b5 = (len b6) + 1 &
b3 = b5 . 1 &
b4 = b5 . len b5 &
(for b7 being Element of NAT
for b8 being Relation-like Function-like set
for b9, b10 being Element of the carrier of b1
st b7 in dom b6 & b8 = b6 . b7 & b9 = b5 . b7 & b10 = b5 . (b7 + 1)
holds b8 is_e.translation_of b2,b9,b10)
holds compose(b6,(the Sorts of b2) . b3) is Function-like quasi_total Relation of (the Sorts of b2) . b3,(the Sorts of b2) . b4 &
(b6 = {} or (the Sorts of b2) . b3 <> {} & (the Sorts of b2) . b4 <> {});
:: MSUALG_6:modenot 3 => MSUALG_6:mode 2
definition
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
let a3, a4 be Element of the carrier of a1;
assume TranslationRel a1 reduces a3,a4;
mode Translation of A2,A3,A4 -> Function-like quasi_total Relation of (the Sorts of a2) . a3,(the Sorts of a2) . a4 means
ex b1 being RedSequence of TranslationRel a1 st
ex b2 being Relation-like Function-like FinSequence-like Function-yielding set st
it = compose(b2,(the Sorts of a2) . a3) &
len b1 = (len b2) + 1 &
a3 = b1 . 1 &
a4 = b1 . len b1 &
(for b3 being Element of NAT
for b4 being Relation-like Function-like set
for b5, b6 being Element of the carrier of a1
st b3 in dom b2 & b4 = b2 . b3 & b5 = b1 . b3 & b6 = b1 . (b3 + 1)
holds b4 is_e.translation_of a2,b5,b6);
end;
:: MSUALG_6:dfs 6
definiens
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
let a3, a4 be Element of the carrier of a1;
let a5 be Function-like quasi_total Relation of (the Sorts of a2) . a3,(the Sorts of a2) . a4;
To prove
a5 is Translation of a2,a3,a4
it is sufficient to prove
thus TranslationRel a1 reduces a3,a4;
thus ex b1 being RedSequence of TranslationRel a1 st
ex b2 being Relation-like Function-like FinSequence-like Function-yielding set st
a5 = compose(b2,(the Sorts of a2) . a3) &
len b1 = (len b2) + 1 &
a3 = b1 . 1 &
a4 = b1 . len b1 &
(for b3 being Element of NAT
for b4 being Relation-like Function-like set
for b5, b6 being Element of the carrier of a1
st b3 in dom b2 & b4 = b2 . b3 & b5 = b1 . b3 & b6 = b1 . (b3 + 1)
holds b4 is_e.translation_of a2,b5,b6);
:: MSUALG_6:def 6
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3, b4 being Element of the carrier of b1
st TranslationRel b1 reduces b3,b4
for b5 being Function-like quasi_total Relation of (the Sorts of b2) . b3,(the Sorts of b2) . b4 holds
b5 is Translation of b2,b3,b4
iff
ex b6 being RedSequence of TranslationRel b1 st
ex b7 being Relation-like Function-like FinSequence-like Function-yielding set st
b5 = compose(b7,(the Sorts of b2) . b3) &
len b6 = (len b7) + 1 &
b3 = b6 . 1 &
b4 = b6 . len b6 &
(for b8 being Element of NAT
for b9 being Relation-like Function-like set
for b10, b11 being Element of the carrier of b1
st b8 in dom b7 & b9 = b7 . b8 & b10 = b6 . b8 & b11 = b6 . (b8 + 1)
holds b9 is_e.translation_of b2,b10,b11);
:: MSUALG_6:th 15
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3, b4 being Element of the carrier of b1
st TranslationRel b1 reduces b3,b4
for b5 being RedSequence of TranslationRel b1
for b6 being Relation-like Function-like FinSequence-like Function-yielding set
st len b5 = (len b6) + 1 &
b3 = b5 . 1 &
b4 = b5 . len b5 &
(for b7 being Element of NAT
for b8 being Relation-like Function-like set
for b9, b10 being Element of the carrier of b1
st b7 in dom b6 & b8 = b6 . b7 & b9 = b5 . b7 & b10 = b5 . (b7 + 1)
holds b8 is_e.translation_of b2,b9,b10)
holds compose(b6,(the Sorts of b2) . b3) is Translation of b2,b3,b4;
:: MSUALG_6:th 16
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being Element of the carrier of b1 holds
id ((the Sorts of b2) . b3) is Translation of b2,b3,b3;
:: MSUALG_6:th 17
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3, b4 being Element of the carrier of b1
for b5 being Relation-like Function-like set
st b5 is_e.translation_of b2,b3,b4
holds TranslationRel b1 reduces b3,b4 & b5 is Translation of b2,b3,b4;
:: MSUALG_6:th 18
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3, b4, b5 being Element of the carrier of b1
st TranslationRel b1 reduces b3,b4 & TranslationRel b1 reduces b4,b5
for b6 being Translation of b2,b3,b4
for b7 being Translation of b2,b4,b5 holds
b7 * b6 is Translation of b2,b3,b5;
:: MSUALG_6:th 19
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3, b4, b5 being Element of the carrier of b1
st TranslationRel b1 reduces b3,b4
for b6 being Translation of b2,b3,b4
for b7 being Relation-like Function-like set
st b7 is_e.translation_of b2,b4,b5
holds b6 * b7 is Translation of b2,b3,b5;
:: MSUALG_6:th 20
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3, b4, b5 being Element of the carrier of b1
st TranslationRel b1 reduces b4,b5
for b6 being Relation-like Function-like set
st b6 is_e.translation_of b2,b3,b4
for b7 being Translation of b2,b4,b5 holds
b6 * b7 is Translation of b2,b3,b5;
:: MSUALG_6:sch 1
scheme MSUALG_6:sch 1
{F1 -> non empty non void ManySortedSign,
F2 -> non-empty MSAlgebra over F1()}:
for b1, b2 being Element of the carrier of F1()
st TranslationRel F1() reduces b1,b2
for b3 being Translation of F2(),b1,b2 holds
P1[b3, b1, b2]
provided
for b1 being Element of the carrier of F1() holds
P1[id ((the Sorts of F2()) . b1), b1, b1]
and
for b1, b2, b3 being Element of the carrier of F1()
st TranslationRel F1() reduces b1,b2
for b4 being Translation of F2(),b1,b2
st P1[b4, b1, b2]
for b5 being Relation-like Function-like set
st b5 is_e.translation_of F2(),b2,b3
holds P1[b4 * b5, b1, b3];
:: MSUALG_6:th 21
theorem
for b1 being non empty non void ManySortedSign
for b2, b3 being non-empty MSAlgebra over b1
for b4 being ManySortedFunction of the Sorts of b2,the Sorts of b3
st b4 is_homomorphism b2,b3
for b5 being Element of the OperSymbols of b1
for b6 being Element of NAT
st b6 in dom the_arity_of b5
for b7 being Element of Args(b5,b2) holds
(transl(b5,b6,b7,b2)) * (b4 . the_result_sort_of b5) = (b4 . ((the_arity_of b5) /. b6)) * transl(b5,b6,b4 # b7,b3);
:: MSUALG_6:th 22
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being Endomorphism of b2
for b4 being Element of the OperSymbols of b1
for b5 being Element of NAT
st b5 in dom the_arity_of b4
for b6 being Element of Args(b4,b2) holds
(transl(b4,b5,b6,b2)) * (b3 . the_result_sort_of b4) = (b3 . ((the_arity_of b4) /. b5)) * transl(b4,b5,b3 # b6,b2);
:: MSUALG_6:th 23
theorem
for b1 being non empty non void ManySortedSign
for b2, b3 being non-empty MSAlgebra over b1
for b4 being ManySortedFunction of the Sorts of b2,the Sorts of b3
st b4 is_homomorphism b2,b3
for b5, b6 being Element of the carrier of b1
for b7 being Relation-like Function-like set
st b7 is_e.translation_of b2,b5,b6
holds ex b8 being Function-like quasi_total Relation of (the Sorts of b3) . b5,(the Sorts of b3) . b6 st
b8 is_e.translation_of b3,b5,b6 &
b8 * (b4 . b5) = b7 * (b4 . b6);
:: MSUALG_6:th 24
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being Endomorphism of b2
for b4, b5 being Element of the carrier of b1
for b6 being Relation-like Function-like set
st b6 is_e.translation_of b2,b4,b5
holds ex b7 being Function-like quasi_total Relation of (the Sorts of b2) . b4,(the Sorts of b2) . b5 st
b7 is_e.translation_of b2,b4,b5 &
b7 * (b3 . b4) = b6 * (b3 . b5);
:: MSUALG_6:th 25
theorem
for b1 being non empty non void ManySortedSign
for b2, b3 being non-empty MSAlgebra over b1
for b4 being ManySortedFunction of the Sorts of b2,the Sorts of b3
st b4 is_homomorphism b2,b3
for b5, b6 being Element of the carrier of b1
st TranslationRel b1 reduces b5,b6
for b7 being Translation of b2,b5,b6 holds
ex b8 being Translation of b3,b5,b6 st
b8 * (b4 . b5) = (b4 . b6) * b7;
:: MSUALG_6:th 26
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being Endomorphism of b2
for b4, b5 being Element of the carrier of b1
st TranslationRel b1 reduces b4,b5
for b6 being Translation of b2,b4,b5 holds
ex b7 being Translation of b2,b4,b5 st
b7 * (b3 . b4) = (b3 . b5) * b6;
:: MSUALG_6:attrnot 2 => MSUALG_6:attr 2
definition
let a1 be non empty non void ManySortedSign;
let a2 be MSAlgebra over a1;
let a3 be ManySortedRelation of the Sorts of a2,the Sorts of a2;
attr a3 is compatible means
for b1 being Element of the OperSymbols of a1
for b2, b3 being Relation-like Function-like set
st b2 in Args(b1,a2) &
b3 in Args(b1,a2) &
(for b4 being Element of NAT
st b4 in dom the_arity_of b1
holds [b2 . b4,b3 . b4] in a3 . ((the_arity_of b1) /. b4))
holds [(Den(b1,a2)) . b2,(Den(b1,a2)) . b3] in a3 . the_result_sort_of b1;
end;
:: MSUALG_6:dfs 7
definiens
let a1 be non empty non void ManySortedSign;
let a2 be MSAlgebra over a1;
let a3 be ManySortedRelation of the Sorts of a2,the Sorts of a2;
To prove
a3 is compatible
it is sufficient to prove
thus for b1 being Element of the OperSymbols of a1
for b2, b3 being Relation-like Function-like set
st b2 in Args(b1,a2) &
b3 in Args(b1,a2) &
(for b4 being Element of NAT
st b4 in dom the_arity_of b1
holds [b2 . b4,b3 . b4] in a3 . ((the_arity_of b1) /. b4))
holds [(Den(b1,a2)) . b2,(Den(b1,a2)) . b3] in a3 . the_result_sort_of b1;
:: MSUALG_6:def 7
theorem
for b1 being non empty non void ManySortedSign
for b2 being MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
b3 is compatible(b1, b2)
iff
for b4 being Element of the OperSymbols of b1
for b5, b6 being Relation-like Function-like set
st b5 in Args(b4,b2) &
b6 in Args(b4,b2) &
(for b7 being Element of NAT
st b7 in dom the_arity_of b4
holds [b5 . b7,b6 . b7] in b3 . ((the_arity_of b4) /. b7))
holds [(Den(b4,b2)) . b5,(Den(b4,b2)) . b6] in b3 . the_result_sort_of b4;
:: MSUALG_6:attrnot 3 => MSUALG_6:attr 3
definition
let a1 be non empty non void ManySortedSign;
let a2 be MSAlgebra over a1;
let a3 be ManySortedRelation of the Sorts of a2,the Sorts of a2;
attr a3 is invariant means
for b1, b2 being Element of the carrier of a1
for b3 being Relation-like Function-like set
st b3 is_e.translation_of a2,b1,b2
for b4, b5 being set
st [b4,b5] in a3 . b1
holds [b3 . b4,b3 . b5] in a3 . b2;
end;
:: MSUALG_6:dfs 8
definiens
let a1 be non empty non void ManySortedSign;
let a2 be MSAlgebra over a1;
let a3 be ManySortedRelation of the Sorts of a2,the Sorts of a2;
To prove
a3 is invariant
it is sufficient to prove
thus for b1, b2 being Element of the carrier of a1
for b3 being Relation-like Function-like set
st b3 is_e.translation_of a2,b1,b2
for b4, b5 being set
st [b4,b5] in a3 . b1
holds [b3 . b4,b3 . b5] in a3 . b2;
:: MSUALG_6:def 8
theorem
for b1 being non empty non void ManySortedSign
for b2 being MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
b3 is invariant(b1, b2)
iff
for b4, b5 being Element of the carrier of b1
for b6 being Relation-like Function-like set
st b6 is_e.translation_of b2,b4,b5
for b7, b8 being set
st [b7,b8] in b3 . b4
holds [b6 . b7,b6 . b8] in b3 . b5;
:: MSUALG_6:attrnot 4 => MSUALG_6:attr 4
definition
let a1 be non empty non void ManySortedSign;
let a2 be MSAlgebra over a1;
let a3 be ManySortedRelation of the Sorts of a2,the Sorts of a2;
attr a3 is stable means
for b1 being Endomorphism of a2
for b2 being Element of the carrier of a1
for b3, b4 being set
st [b3,b4] in a3 . b2
holds [(b1 . b2) . b3,(b1 . b2) . b4] in a3 . b2;
end;
:: MSUALG_6:dfs 9
definiens
let a1 be non empty non void ManySortedSign;
let a2 be MSAlgebra over a1;
let a3 be ManySortedRelation of the Sorts of a2,the Sorts of a2;
To prove
a3 is stable
it is sufficient to prove
thus for b1 being Endomorphism of a2
for b2 being Element of the carrier of a1
for b3, b4 being set
st [b3,b4] in a3 . b2
holds [(b1 . b2) . b3,(b1 . b2) . b4] in a3 . b2;
:: MSUALG_6:def 9
theorem
for b1 being non empty non void ManySortedSign
for b2 being MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
b3 is stable(b1, b2)
iff
for b4 being Endomorphism of b2
for b5 being Element of the carrier of b1
for b6, b7 being set
st [b6,b7] in b3 . b5
holds [(b4 . b5) . b6,(b4 . b5) . b7] in b3 . b5;
:: MSUALG_6:th 27
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being MSEquivalence-like ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
b3 is compatible(b1, b2)
iff
b3 is MSEquivalence-like MSCongruence-like ManySortedRelation of the Sorts of b2,the Sorts of b2;
:: MSUALG_6:th 28
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
b3 is invariant(b1, b2)
iff
for b4, b5 being Element of the carrier of b1
st TranslationRel b1 reduces b4,b5
for b6 being Translation of b2,b4,b5
for b7, b8 being set
st [b7,b8] in b3 . b4
holds [b6 . b7,b6 . b8] in b3 . b5;
:: MSUALG_6:condreg 2
registration
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
cluster MSEquivalence-like invariant -> compatible (ManySortedRelation of the Sorts of a2,the Sorts of a2);
end;
:: MSUALG_6:condreg 3
registration
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
cluster MSEquivalence-like compatible -> invariant (ManySortedRelation of the Sorts of a2,the Sorts of a2);
end;
:: MSUALG_6:funcreg 1
registration
let a1 be non empty set;
cluster id a1 -> Relation-like non empty;
end;
:: MSUALG_6:sch 2
scheme MSUALG_6:sch 2
{F1 -> non empty set,
F2 -> non-empty ManySortedSet of F1()}:
ex b1 being ManySortedRelation of F2(),F2() st
for b2 being Element of F1()
for b3, b4 being Element of F2() . b2 holds
[b3,b4] in b1 . b2
iff
P1[b2, b3, b4]
:: MSUALG_6:sch 3
scheme MSUALG_6:sch 3
{F1 -> set,
F2 -> ManySortedSet of F1(),
F3 -> set}:
(ex b1 being ManySortedRelation of F2(),F2() st
for b2 being set
st b2 in F1()
holds b1 . b2 = F3(b2)) &
(for b1, b2 being ManySortedRelation of F2(),F2()
st (for b3 being set
st b3 in F1()
holds b1 . b3 = F3(b3)) &
(for b3 being set
st b3 in F1()
holds b2 . b3 = F3(b3))
holds b1 = b2)
provided
for b1 being set
st b1 in F1()
holds F3(b1) is Relation of F2() . b1,F2() . b1;
:: MSUALG_6:funcnot 5 => MSUALG_6:func 5
definition
let a1 be set;
let a2 be ManySortedSet of a1;
func id(A1,A2) -> ManySortedRelation of a2,a2 means
for b1 being set
st b1 in a1
holds it . b1 = id (a2 . b1);
end;
:: MSUALG_6:def 10
theorem
for b1 being set
for b2 being ManySortedSet of b1
for b3 being ManySortedRelation of b2,b2 holds
b3 = id(b1,b2)
iff
for b4 being set
st b4 in b1
holds b3 . b4 = id (b2 . b4);
:: MSUALG_6:condreg 4
registration
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
cluster MSEquivalence-like -> non-empty (ManySortedRelation of the Sorts of a2,the Sorts of a2);
end;
:: MSUALG_6:exreg 2
registration
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
cluster Relation-like Function-like Relation-yielding MSEquivalence-like invariant stable ManySortedRelation of the Sorts of a2,the Sorts of a2;
end;
:: MSUALG_6:sch 4
scheme MSUALG_6:sch 4
{F1 -> non empty non void ManySortedSign,
F2 -> non-empty MSAlgebra over F1(),
F3 -> ManySortedRelation of the Sorts of F2(),the Sorts of F2(),
F4 -> ManySortedRelation of the Sorts of F2(),the Sorts of F2()}:
P2[F4()] &
F3() c= F4() &
(for b1 being ManySortedRelation of the Sorts of F2(),the Sorts of F2()
st P2[b1] & F3() c= b1
holds F4() c= b1)
provided
for b1 being ManySortedRelation of the Sorts of F2(),the Sorts of F2() holds
P2[b1]
iff
for b2, b3 being Element of the carrier of F1()
for b4 being Function-like quasi_total Relation of (the Sorts of F2()) . b2,(the Sorts of F2()) . b3
st P1[b4, b2, b3]
for b5, b6 being set
st [b5,b6] in b1 . b2
holds [b4 . b5,b4 . b6] in b1 . b3
and
for b1, b2, b3 being Element of the carrier of F1()
for b4 being Function-like quasi_total Relation of (the Sorts of F2()) . b1,(the Sorts of F2()) . b2
for b5 being Function-like quasi_total Relation of (the Sorts of F2()) . b2,(the Sorts of F2()) . b3
st P1[b4, b1, b2] & P1[b5, b2, b3]
holds P1[b5 * b4, b1, b3]
and
for b1 being Element of the carrier of F1() holds
P1[id ((the Sorts of F2()) . b1), b1, b1]
and
for b1 being Element of the carrier of F1()
for b2, b3 being Element of (the Sorts of F2()) . b1 holds
[b2,b3] in F4() . b1
iff
ex b4 being Element of the carrier of F1() st
ex b5 being Function-like quasi_total Relation of (the Sorts of F2()) . b4,(the Sorts of F2()) . b1 st
ex b6, b7 being Element of (the Sorts of F2()) . b4 st
P1[b5, b4, b1] & [b6,b7] in F3() . b4 & b2 = b5 . b6 & b3 = b5 . b7;
:: MSUALG_6:funcnot 6 => MSUALG_6:func 6
definition
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
let a3 be ManySortedRelation of the Sorts of a2,the Sorts of a2;
func InvCl A3 -> invariant ManySortedRelation of the Sorts of a2,the Sorts of a2 means
a3 c= it &
(for b1 being invariant ManySortedRelation of the Sorts of a2,the Sorts of a2
st a3 c= b1
holds it c= b1);
end;
:: MSUALG_6:def 11
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2
for b4 being invariant ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
b4 = InvCl b3
iff
b3 c= b4 &
(for b5 being invariant ManySortedRelation of the Sorts of b2,the Sorts of b2
st b3 c= b5
holds b4 c= b5);
:: MSUALG_6:th 29
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2
for b4 being Element of the carrier of b1
for b5, b6 being Element of (the Sorts of b2) . b4 holds
[b5,b6] in (InvCl b3) . b4
iff
ex b7 being Element of the carrier of b1 st
ex b8, b9 being Element of (the Sorts of b2) . b7 st
ex b10 being Translation of b2,b7,b4 st
TranslationRel b1 reduces b7,b4 & [b8,b9] in b3 . b7 & b5 = b10 . b8 & b6 = b10 . b9;
:: MSUALG_6:th 30
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being stable ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
InvCl b3 is stable(b1, b2);
:: MSUALG_6:funcnot 7 => MSUALG_6:func 7
definition
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
let a3 be ManySortedRelation of the Sorts of a2,the Sorts of a2;
func StabCl A3 -> stable ManySortedRelation of the Sorts of a2,the Sorts of a2 means
a3 c= it &
(for b1 being stable ManySortedRelation of the Sorts of a2,the Sorts of a2
st a3 c= b1
holds it c= b1);
end;
:: MSUALG_6:def 12
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2
for b4 being stable ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
b4 = StabCl b3
iff
b3 c= b4 &
(for b5 being stable ManySortedRelation of the Sorts of b2,the Sorts of b2
st b3 c= b5
holds b4 c= b5);
:: MSUALG_6:th 31
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2
for b4 being Element of the carrier of b1
for b5, b6 being Element of (the Sorts of b2) . b4 holds
[b5,b6] in (StabCl b3) . b4
iff
ex b7, b8 being Element of (the Sorts of b2) . b4 st
ex b9 being Endomorphism of b2 st
[b7,b8] in b3 . b4 & b5 = (b9 . b4) . b7 & b6 = (b9 . b4) . b8;
:: MSUALG_6:th 32
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
InvCl StabCl b3 is stable(b1, b2);
:: MSUALG_6:funcnot 8 => MSUALG_6:func 8
definition
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
let a3 be ManySortedRelation of the Sorts of a2,the Sorts of a2;
func TRS A3 -> invariant stable ManySortedRelation of the Sorts of a2,the Sorts of a2 means
a3 c= it &
(for b1 being invariant stable ManySortedRelation of the Sorts of a2,the Sorts of a2
st a3 c= b1
holds it c= b1);
end;
:: MSUALG_6:def 13
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2
for b4 being invariant stable ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
b4 = TRS b3
iff
b3 c= b4 &
(for b5 being invariant stable ManySortedRelation of the Sorts of b2,the Sorts of b2
st b3 c= b5
holds b4 c= b5);
:: MSUALG_6:funcreg 2
registration
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
let a3 be non-empty ManySortedRelation of the Sorts of a2,the Sorts of a2;
cluster InvCl a3 -> non-empty invariant;
end;
:: MSUALG_6:funcreg 3
registration
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
let a3 be non-empty ManySortedRelation of the Sorts of a2,the Sorts of a2;
cluster StabCl a3 -> non-empty stable;
end;
:: MSUALG_6:funcreg 4
registration
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
let a3 be non-empty ManySortedRelation of the Sorts of a2,the Sorts of a2;
cluster TRS a3 -> non-empty invariant stable;
end;
:: MSUALG_6:th 33
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being invariant ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
InvCl b3 = b3;
:: MSUALG_6:th 34
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being stable ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
StabCl b3 = b3;
:: MSUALG_6:th 35
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being invariant stable ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
TRS b3 = b3;
:: MSUALG_6:th 36
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
StabCl b3 c= TRS b3 & InvCl b3 c= TRS b3 & StabCl InvCl b3 c= TRS b3;
:: MSUALG_6:th 37
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
InvCl StabCl b3 = TRS b3;
:: MSUALG_6:th 38
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2
for b4 being Element of the carrier of b1
for b5, b6 being Element of (the Sorts of b2) . b4 holds
[b5,b6] in (TRS b3) . b4
iff
ex b7 being Element of the carrier of b1 st
TranslationRel b1 reduces b7,b4 &
(ex b8, b9 being Element of (the Sorts of b2) . b7 st
ex b10 being Endomorphism of b2 st
ex b11 being Translation of b2,b7,b4 st
[b8,b9] in b3 . b7 & b5 = b11 . ((b10 . b7) . b8) & b6 = b11 . ((b10 . b7) . b9));
:: MSUALG_6:th 39
theorem
for b1 being set
for b2, b3 being Relation of b1,b1
st for b4, b5 being set
st b4 in b1 & b5 in b1
holds [b4,b5] in b3
iff
b4,b5 are_convertible_wrt b2
holds b3 is total(b1, b1) & b3 is symmetric & b3 is transitive;
:: MSUALG_6:th 40
theorem
for b1 being set
for b2 being Relation of b1,b1
for b3 being total symmetric transitive Relation of b1,b1
st b2 c= b3
for b4, b5 being set
st b4 in b1 & b5 in b1 & b4,b5 are_convertible_wrt b2
holds [b4,b5] in b3;
:: MSUALG_6:th 41
theorem
for b1 being non empty set
for b2 being Relation of b1,b1
for b3, b4 being Element of b1 holds
[b3,b4] in EqCl b2
iff
b3,b4 are_convertible_wrt b2;
:: MSUALG_6:th 42
theorem
for b1 being non empty set
for b2 being non-empty ManySortedSet of b1
for b3 being ManySortedRelation of b2,b2
for b4 being Element of b1
for b5, b6 being Element of b2 . b4 holds
[b5,b6] in (EqCl b3) . b4
iff
b5,b6 are_convertible_wrt b3 . b4;
:: MSUALG_6:modenot 4
definition
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
mode EquationalTheory of a2 is MSEquivalence-like invariant stable ManySortedRelation of the Sorts of a2,the Sorts of a2;
end;
:: MSUALG_6:funcnot 9 => MSUALG_6:func 9
definition
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
let a3 be ManySortedRelation of the Sorts of a2,the Sorts of a2;
func EqCl(A3,A2) -> MSEquivalence-like ManySortedRelation of the Sorts of a2,the Sorts of a2 equals
EqCl a3;
end;
:: MSUALG_6:def 14
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
EqCl(b3,b2) = EqCl b3;
:: MSUALG_6:th 43
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
b3 c= EqCl(b3,b2);
:: MSUALG_6:th 44
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2
for b4 being MSEquivalence-like ManySortedRelation of the Sorts of b2,the Sorts of b2
st b3 c= b4
holds EqCl(b3,b2) c= b4;
:: MSUALG_6:th 45
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being stable ManySortedRelation of the Sorts of b2,the Sorts of b2
for b4 being Element of the carrier of b1
for b5, b6 being Element of (the Sorts of b2) . b4
st b5,b6 are_convertible_wrt b3 . b4
for b7 being Endomorphism of b2 holds
(b7 . b4) . b5,(b7 . b4) . b6 are_convertible_wrt b3 . b4;
:: MSUALG_6:th 46
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being stable ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
EqCl(b3,b2) is stable(b1, b2);
:: MSUALG_6:funcreg 5
registration
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
let a3 be stable ManySortedRelation of the Sorts of a2,the Sorts of a2;
cluster EqCl(a3,a2) -> MSEquivalence-like stable;
end;
:: MSUALG_6:th 47
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being invariant ManySortedRelation of the Sorts of b2,the Sorts of b2
for b4, b5 being Element of the carrier of b1
for b6, b7 being Element of (the Sorts of b2) . b4
st b6,b7 are_convertible_wrt b3 . b4
for b8 being Relation-like Function-like set
st b8 is_e.translation_of b2,b4,b5
holds b8 . b6,b8 . b7 are_convertible_wrt b3 . b5;
:: MSUALG_6:th 48
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being invariant ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
EqCl(b3,b2) is invariant(b1, b2);
:: MSUALG_6:funcreg 6
registration
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
let a3 be invariant ManySortedRelation of the Sorts of a2,the Sorts of a2;
cluster EqCl(a3,a2) -> MSEquivalence-like invariant;
end;
:: MSUALG_6:th 49
theorem
for b1 being non empty set
for b2 being non-empty ManySortedSet of b1
for b3, b4 being ManySortedRelation of b2,b2
st for b5 being Element of b1
for b6, b7 being Element of b2 . b5 holds
[b6,b7] in b4 . b5
iff
b6,b7 are_convertible_wrt b3 . b5
holds b4 is MSEquivalence_Relation-like(b1, b2);
:: MSUALG_6:th 50
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3, b4 being ManySortedRelation of the Sorts of b2,the Sorts of b2
st for b5 being Element of the carrier of b1
for b6, b7 being Element of (the Sorts of b2) . b5 holds
[b6,b7] in b4 . b5
iff
b6,b7 are_convertible_wrt (TRS b3) . b5
holds b4 is MSEquivalence-like invariant stable ManySortedRelation of the Sorts of b2,the Sorts of b2;
:: MSUALG_6:th 51
theorem
for b1 being non empty set
for b2 being non-empty ManySortedSet of b1
for b3 being ManySortedRelation of b2,b2
for b4 being MSEquivalence_Relation-like ManySortedRelation of b2,b2
st b3 c= b4
for b5 being Element of b1
for b6, b7 being Element of b2 . b5
st b6,b7 are_convertible_wrt b3 . b5
holds [b6,b7] in b4 . b5;
:: MSUALG_6:funcnot 10 => MSUALG_6:func 10
definition
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
let a3 be ManySortedRelation of the Sorts of a2,the Sorts of a2;
func EqTh A3 -> MSEquivalence-like invariant stable ManySortedRelation of the Sorts of a2,the Sorts of a2 means
a3 c= it &
(for b1 being MSEquivalence-like invariant stable ManySortedRelation of the Sorts of a2,the Sorts of a2
st a3 c= b1
holds it c= b1);
end;
:: MSUALG_6:def 15
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2
for b4 being MSEquivalence-like invariant stable ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
b4 = EqTh b3
iff
b3 c= b4 &
(for b5 being MSEquivalence-like invariant stable ManySortedRelation of the Sorts of b2,the Sorts of b2
st b3 c= b5
holds b4 c= b5);
:: MSUALG_6:th 52
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
EqCl(b3,b2) c= EqTh b3 & InvCl b3 c= EqTh b3 & StabCl b3 c= EqTh b3 & TRS b3 c= EqTh b3;
:: MSUALG_6:th 53
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2
for b4 being Element of the carrier of b1
for b5, b6 being Element of (the Sorts of b2) . b4 holds
[b5,b6] in (EqTh b3) . b4
iff
b5,b6 are_convertible_wrt (TRS b3) . b4;
:: MSUALG_6:th 54
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being ManySortedRelation of the Sorts of b2,the Sorts of b2 holds
EqTh b3 = EqCl(TRS b3,b2);