Article AUTALG_1, MML version 4.99.1005
:: AUTALG_1:th 1
theorem
for b1 being non empty partial quasi_total non-empty UAStr holds
id the carrier of b1 is_isomorphism b1,b1;
:: AUTALG_1:funcnot 1 => AUTALG_1:func 1
definition
let a1 be non empty partial quasi_total non-empty UAStr;
func UAAut A1 -> FUNCTION_DOMAIN of the carrier of a1,the carrier of a1 means
(for b1 being Element of it holds
b1 is Function-like quasi_total Relation of the carrier of a1,the carrier of a1) &
(for b1 being Function-like quasi_total Relation of the carrier of a1,the carrier of a1 holds
b1 in it
iff
b1 is_isomorphism a1,a1);
end;
:: AUTALG_1:def 1
theorem
for b1 being non empty partial quasi_total non-empty UAStr
for b2 being FUNCTION_DOMAIN of the carrier of b1,the carrier of b1 holds
b2 = UAAut b1
iff
(for b3 being Element of b2 holds
b3 is Function-like quasi_total Relation of the carrier of b1,the carrier of b1) &
(for b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1 holds
b3 in b2
iff
b3 is_isomorphism b1,b1);
:: AUTALG_1:th 2
theorem
for b1 being non empty partial quasi_total non-empty UAStr holds
UAAut b1 c= Funcs(the carrier of b1,the carrier of b1);
:: AUTALG_1:th 4
theorem
for b1 being non empty partial quasi_total non-empty UAStr holds
id the carrier of b1 in UAAut b1;
:: AUTALG_1:th 5
theorem
for b1 being non empty partial quasi_total non-empty UAStr
for b2, b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1
st b2 is Element of UAAut b1 & b3 = b2 "
holds b3 is_isomorphism b1,b1;
:: AUTALG_1:th 6
theorem
for b1 being non empty partial quasi_total non-empty UAStr
for b2 being Element of UAAut b1 holds
b2 " in UAAut b1;
:: AUTALG_1:th 7
theorem
for b1 being non empty partial quasi_total non-empty UAStr
for b2, b3 being Element of UAAut b1 holds
b2 * b3 in UAAut b1;
:: AUTALG_1:funcnot 2 => AUTALG_1:func 2
definition
let a1 be non empty partial quasi_total non-empty UAStr;
func UAAutComp A1 -> Function-like quasi_total Relation of [:UAAut a1,UAAut a1:],UAAut a1 means
for b1, b2 being Element of UAAut a1 holds
it .(b1,b2) = b2 * b1;
end;
:: AUTALG_1:def 2
theorem
for b1 being non empty partial quasi_total non-empty UAStr
for b2 being Function-like quasi_total Relation of [:UAAut b1,UAAut b1:],UAAut b1 holds
b2 = UAAutComp b1
iff
for b3, b4 being Element of UAAut b1 holds
b2 .(b3,b4) = b4 * b3;
:: AUTALG_1:funcnot 3 => AUTALG_1:func 3
definition
let a1 be non empty partial quasi_total non-empty UAStr;
func UAAutGroup A1 -> non empty Group-like associative multMagma equals
multMagma(#UAAut a1,UAAutComp a1#);
end;
:: AUTALG_1:def 3
theorem
for b1 being non empty partial quasi_total non-empty UAStr holds
UAAutGroup b1 = multMagma(#UAAut b1,UAAutComp b1#);
:: AUTALG_1:funcreg 1
registration
let a1 be non empty partial quasi_total non-empty UAStr;
cluster UAAutGroup a1 -> non empty strict Group-like associative;
end;
:: AUTALG_1:th 8
theorem
for b1 being non empty partial quasi_total non-empty UAStr
for b2, b3 being Element of the carrier of UAAutGroup b1
for b4, b5 being Element of UAAut b1
st b2 = b4 & b3 = b5
holds b2 * b3 = b5 * b4;
:: AUTALG_1:th 9
theorem
for b1 being non empty partial quasi_total non-empty UAStr holds
id the carrier of b1 = 1_ UAAutGroup b1;
:: AUTALG_1:th 10
theorem
for b1 being non empty partial quasi_total non-empty UAStr
for b2 being Element of UAAut b1
for b3 being Element of the carrier of UAAutGroup b1
st b2 = b3
holds b2 " = b3 ";
:: AUTALG_1:th 11
theorem
for b1 being set
for b2, b3, b4 being ManySortedSet of b1
st b2 is_transformable_to b3 & b3 is_transformable_to b4
holds b2 is_transformable_to b4;
:: AUTALG_1:th 12
theorem
for b1 being set
for b2 being ManySortedSet of {b1} holds
b2 = b1 .--> (b2 . b1);
:: AUTALG_1:th 13
theorem
for b1, b2, b3 being Relation-like Function-like Function-yielding set holds
(b3 ** b2) ** b1 = b3 ** (b2 ** b1);
:: AUTALG_1:th 14
theorem
for b1 being set
for b2, b3 being non-empty ManySortedSet of b1
for b4 being ManySortedFunction of b2,b3
st b4 is "1-1" & b4 is "onto"(b1, b2, b3)
holds b4 "" is "1-1" & b4 "" is "onto"(b1, b3, b2);
:: AUTALG_1:th 15
theorem
for b1 being set
for b2, b3 being non-empty ManySortedSet of b1
for b4 being ManySortedFunction of b2,b3
st b4 is "1-1" & b4 is "onto"(b1, b2, b3)
holds b4 "" "" = b4;
:: AUTALG_1:th 16
theorem
for b1, b2 being Relation-like Function-like Function-yielding set
st b1 is "1-1" & b2 is "1-1"
holds b2 ** b1 is "1-1";
:: AUTALG_1:th 17
theorem
for b1 being set
for b2 being ManySortedSet of b1
for b3, b4 being non-empty ManySortedSet of b1
for b5 being ManySortedFunction of b2,b3
for b6 being ManySortedFunction of b3,b4
st b5 is "onto"(b1, b2, b3) & b6 is "onto"(b1, b3, b4)
holds b6 ** b5 is "onto"(b1, b2, b4);
:: AUTALG_1:th 18
theorem
for b1 being set
for b2, b3, b4 being non-empty ManySortedSet of b1
for b5 being ManySortedFunction of b2,b3
for b6 being ManySortedFunction of b3,b4
st b5 is "1-1" & b5 is "onto"(b1, b2, b3) & b6 is "1-1" & b6 is "onto"(b1, b3, b4)
holds (b6 ** b5) "" = b5 "" ** (b6 "");
:: AUTALG_1:th 19
theorem
for b1 being set
for b2, b3 being non-empty ManySortedSet of b1
for b4 being ManySortedFunction of b2,b3
for b5 being ManySortedFunction of b3,b2
st b4 is "1-1" & b4 is "onto"(b1, b2, b3) & b5 ** b4 = id b2
holds b5 = b4 "";
:: AUTALG_1:th 21
theorem
for b1 being set
for b2, b3 being ManySortedSet of b1
st b2 is_transformable_to b3
for b4 being set
st b4 in product MSFuncs(b2,b3)
holds b4 is ManySortedFunction of b2,b3;
:: AUTALG_1:th 22
theorem
for b1 being set
for b2, b3 being ManySortedSet of b1
st b2 is_transformable_to b3
for b4 being ManySortedFunction of b2,b3 holds
b4 in product MSFuncs(b2,b3);
:: AUTALG_1:th 23
theorem
for b1 being set
for b2, b3 being ManySortedSet of b1
st b2 is_transformable_to b3
holds MSFuncs(b2,b3) is non-empty;
:: AUTALG_1:modenot 1 => AUTALG_1:mode 1
definition
let a1 be set;
let a2, a3 be ManySortedSet of a1;
assume a2 is_transformable_to a3;
mode MSFunctionSet of A2,A3 -> non empty set means
for b1 being set
st b1 in it
holds b1 is ManySortedFunction of a2,a3;
end;
:: AUTALG_1:dfs 4
definiens
let a1 be set;
let a2, a3 be ManySortedSet of a1;
let a4 be non empty set;
To prove
a4 is MSFunctionSet of a2,a3
it is sufficient to prove
thus a2 is_transformable_to a3;
thus for b1 being set
st b1 in a4
holds b1 is ManySortedFunction of a2,a3;
:: AUTALG_1:def 6
theorem
for b1 being set
for b2, b3 being ManySortedSet of b1
st b2 is_transformable_to b3
for b4 being non empty set holds
b4 is MSFunctionSet of b2,b3
iff
for b5 being set
st b5 in b4
holds b5 is ManySortedFunction of b2,b3;
:: AUTALG_1:funcreg 2
registration
let a1 be set;
let a2 be ManySortedSet of a1;
cluster MSFuncs(a2,a2) -> non-empty;
end;
:: AUTALG_1:modenot 2
definition
let a1 be non empty non void ManySortedSign;
let a2, a3 be non-empty MSAlgebra over a1;
mode MSFunctionSet of a2,a3 is MSFunctionSet of the Sorts of a2,the Sorts of a3;
end;
:: AUTALG_1:exreg 1
registration
let a1 be set;
let a2 be ManySortedSet of a1;
cluster non empty MSFunctionSet of a2,a2;
end;
:: AUTALG_1:modenot 3 => AUTALG_1:mode 2
definition
let a1 be set;
let a2 be ManySortedSet of a1;
let a3 be non empty MSFunctionSet of a2,a2;
redefine mode Element of a3 -> ManySortedFunction of a2,a2;
end;
:: AUTALG_1:th 24
theorem
for b1 being set
for b2 being ManySortedSet of b1 holds
id b2 is "onto"(b1, b2, b2);
:: AUTALG_1:th 25
theorem
for b1 being set
for b2 being ManySortedSet of b1 holds
id b2 is "1-1";
:: AUTALG_1:th 27
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1 holds
id the Sorts of b2 in product MSFuncs(the Sorts of b2,the Sorts of b2);
:: AUTALG_1:funcnot 4 => AUTALG_1:func 4
definition
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
func MSAAut A2 -> MSFunctionSet of the Sorts of a2,the Sorts of a2 means
(for b1 being Element of it holds
b1 is ManySortedFunction of the Sorts of a2,the Sorts of a2) &
(for b1 being ManySortedFunction of the Sorts of a2,the Sorts of a2 holds
b1 in it
iff
b1 is_isomorphism a2,a2);
end;
:: AUTALG_1:def 7
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being MSFunctionSet of the Sorts of b2,the Sorts of b2 holds
b3 = MSAAut b2
iff
(for b4 being Element of b3 holds
b4 is ManySortedFunction of the Sorts of b2,the Sorts of b2) &
(for b4 being ManySortedFunction of the Sorts of b2,the Sorts of b2 holds
b4 in b3
iff
b4 is_isomorphism b2,b2);
:: AUTALG_1:th 29
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being Element of MSAAut b2 holds
b3 in product MSFuncs(the Sorts of b2,the Sorts of b2);
:: AUTALG_1:th 30
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1 holds
MSAAut b2 c= product MSFuncs(the Sorts of b2,the Sorts of b2);
:: AUTALG_1:th 31
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1 holds
id the Sorts of b2 in MSAAut b2;
:: AUTALG_1:th 32
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being Element of MSAAut b2 holds
b3 "" in MSAAut b2;
:: AUTALG_1:th 33
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3, b4 being Element of MSAAut b2 holds
b3 ** b4 in MSAAut b2;
:: AUTALG_1:th 34
theorem
for b1 being non empty partial quasi_total non-empty UAStr
for b2 being ManySortedFunction of the Sorts of MSAlg b1,the Sorts of MSAlg b1
for b3 being Element of UAAut b1
st b2 = 0 .--> b3
holds b2 in MSAAut MSAlg b1;
:: AUTALG_1:funcnot 5 => AUTALG_1:func 5
definition
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
func MSAAutComp A2 -> Function-like quasi_total Relation of [:MSAAut a2,MSAAut a2:],MSAAut a2 means
for b1, b2 being Element of MSAAut a2 holds
it .(b1,b2) = b2 ** b1;
end;
:: AUTALG_1:def 8
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being Function-like quasi_total Relation of [:MSAAut b2,MSAAut b2:],MSAAut b2 holds
b3 = MSAAutComp b2
iff
for b4, b5 being Element of MSAAut b2 holds
b3 .(b4,b5) = b5 ** b4;
:: AUTALG_1:funcnot 6 => AUTALG_1:func 6
definition
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
func MSAAutGroup A2 -> non empty Group-like associative multMagma equals
multMagma(#MSAAut a2,MSAAutComp a2#);
end;
:: AUTALG_1:def 9
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1 holds
MSAAutGroup b2 = multMagma(#MSAAut b2,MSAAutComp b2#);
:: AUTALG_1:funcreg 3
registration
let a1 be non empty non void ManySortedSign;
let a2 be non-empty MSAlgebra over a1;
cluster MSAAutGroup a2 -> non empty strict Group-like associative;
end;
:: AUTALG_1:th 35
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 MSAAutGroup b2
for b5, b6 being Element of MSAAut b2
st b3 = b5 & b4 = b6
holds b3 * b4 = b6 ** b5;
:: AUTALG_1:th 36
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1 holds
id the Sorts of b2 = 1_ MSAAutGroup b2;
:: AUTALG_1:th 37
theorem
for b1 being non empty non void ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being Element of MSAAut b2
for b4 being Element of the carrier of MSAAutGroup b2
st b3 = b4
holds b3 "" = b4 ";
:: AUTALG_1:th 38
theorem
for b1, b2 being non empty partial quasi_total non-empty UAStr
st b1,b2 are_similar
for b3 being ManySortedFunction of the Sorts of MSAlg b1,the Sorts of (MSAlg b2) Over MSSign b1 holds
b3 . 0 is Function-like quasi_total Relation of the carrier of b1,the carrier of b2;
:: AUTALG_1:th 39
theorem
for b1 being non empty partial quasi_total non-empty UAStr
for b2 being Element of UAAut b1 holds
0 .--> b2 is ManySortedFunction of the Sorts of MSAlg b1,the Sorts of MSAlg b1;
:: AUTALG_1:th 40
theorem
for b1 being non empty partial quasi_total non-empty UAStr
for b2 being Relation-like Function-like set
st proj1 b2 = UAAut b1 &
(for b3 being set
st b3 in UAAut b1
holds b2 . b3 = 0 .--> b3)
holds b2 is Function-like quasi_total multiplicative Relation of the carrier of UAAutGroup b1,the carrier of MSAAutGroup MSAlg b1;
:: AUTALG_1:th 41
theorem
for b1 being non empty partial quasi_total non-empty UAStr
for b2 being Function-like quasi_total multiplicative Relation of the carrier of UAAutGroup b1,the carrier of MSAAutGroup MSAlg b1
st for b3 being set
st b3 in UAAut b1
holds b2 . b3 = 0 .--> b3
holds b2 is being_isomorphism(UAAutGroup b1, MSAAutGroup MSAlg b1);
:: AUTALG_1:th 42
theorem
for b1 being non empty partial quasi_total non-empty UAStr holds
UAAutGroup b1,MSAAutGroup MSAlg b1 are_isomorphic;