Article GROUP_2, MML version 4.99.1005
:: GROUP_2:th 3
theorem
for b1 being non empty 1-sorted
for b2 being Element of bool the carrier of b1
st b1 is finite
holds b2 is finite;
:: GROUP_2:funcnot 1 => GROUP_2:func 1
definition
let a1 be non empty Group-like associative multMagma;
let a2 be Element of bool the carrier of a1;
func A2 " -> Element of bool the carrier of a1 equals
{b1 " where b1 is Element of the carrier of a1: b1 in a2};
end;
:: GROUP_2:def 1
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of bool the carrier of b1 holds
b2 " = {b3 " where b3 is Element of the carrier of b1: b3 in b2};
:: GROUP_2:th 5
theorem
for b1 being set
for b2 being non empty Group-like associative multMagma
for b3 being Element of bool the carrier of b2 holds
b1 in b3 "
iff
ex b4 being Element of the carrier of b2 st
b1 = b4 " & b4 in b3;
:: GROUP_2:th 6
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1 holds
{b2} " = {b2 "};
:: GROUP_2:th 7
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of the carrier of b1 holds
{b2,b3} " = {b2 ",b3 "};
:: GROUP_2:th 8
theorem
for b1 being non empty Group-like associative multMagma holds
({} the carrier of b1) " = {};
:: GROUP_2:th 9
theorem
for b1 being non empty Group-like associative multMagma holds
([#] the carrier of b1) " = the carrier of b1;
:: GROUP_2:th 10
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of bool the carrier of b1 holds
b2 <> {}
iff
b2 " <> {};
:: GROUP_2:funcnot 2 => GROUP_2:func 2
definition
let a1 be non empty multMagma;
let a2, a3 be Element of bool the carrier of a1;
func A2 * A3 -> Element of bool the carrier of a1 equals
{b1 * b2 where b1 is Element of the carrier of a1, b2 is Element of the carrier of a1: b1 in a2 & b2 in a3};
end;
:: GROUP_2:def 2
theorem
for b1 being non empty multMagma
for b2, b3 being Element of bool the carrier of b1 holds
b2 * b3 = {b4 * b5 where b4 is Element of the carrier of b1, b5 is Element of the carrier of b1: b4 in b2 & b5 in b3};
:: GROUP_2:th 12
theorem
for b1 being set
for b2 being non empty multMagma
for b3, b4 being Element of bool the carrier of b2 holds
b1 in b3 * b4
iff
ex b5, b6 being Element of the carrier of b2 st
b1 = b5 * b6 & b5 in b3 & b6 in b4;
:: GROUP_2:th 13
theorem
for b1 being non empty multMagma
for b2, b3 being Element of bool the carrier of b1 holds
b2 <> {} & b3 <> {}
iff
b2 * b3 <> {};
:: GROUP_2:th 14
theorem
for b1 being non empty multMagma
for b2, b3, b4 being Element of bool the carrier of b1
st b1 is associative
holds (b2 * b3) * b4 = b2 * (b3 * b4);
:: GROUP_2:th 15
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of bool the carrier of b1 holds
(b2 * b3) " = b3 " * (b2 ");
:: GROUP_2:th 16
theorem
for b1 being non empty multMagma
for b2, b3, b4 being Element of bool the carrier of b1 holds
b2 * (b3 \/ b4) = (b2 * b3) \/ (b2 * b4);
:: GROUP_2:th 17
theorem
for b1 being non empty multMagma
for b2, b3, b4 being Element of bool the carrier of b1 holds
(b2 \/ b3) * b4 = (b2 * b4) \/ (b3 * b4);
:: GROUP_2:th 18
theorem
for b1 being non empty multMagma
for b2, b3, b4 being Element of bool the carrier of b1 holds
b2 * (b3 /\ b4) c= (b2 * b3) /\ (b2 * b4);
:: GROUP_2:th 19
theorem
for b1 being non empty multMagma
for b2, b3, b4 being Element of bool the carrier of b1 holds
(b2 /\ b3) * b4 c= (b2 * b4) /\ (b3 * b4);
:: GROUP_2:th 20
theorem
for b1 being non empty multMagma
for b2 being Element of bool the carrier of b1 holds
({} the carrier of b1) * b2 = {} & b2 * {} the carrier of b1 = {};
:: GROUP_2:th 21
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of bool the carrier of b1
st b2 <> {}
holds ([#] the carrier of b1) * b2 = the carrier of b1 & b2 * [#] the carrier of b1 = the carrier of b1;
:: GROUP_2:th 22
theorem
for b1 being non empty multMagma
for b2, b3 being Element of the carrier of b1 holds
{b2} * {b3} = {b2 * b3};
:: GROUP_2:th 23
theorem
for b1 being non empty multMagma
for b2, b3, b4 being Element of the carrier of b1 holds
{b2} * {b3,b4} = {b2 * b3,b2 * b4};
:: GROUP_2:th 24
theorem
for b1 being non empty multMagma
for b2, b3, b4 being Element of the carrier of b1 holds
{b2,b3} * {b4} = {b2 * b4,b3 * b4};
:: GROUP_2:th 25
theorem
for b1 being non empty multMagma
for b2, b3, b4, b5 being Element of the carrier of b1 holds
{b2,b3} * {b4,b5} = {b2 * b4,b2 * b5,b3 * b4,b3 * b5};
:: GROUP_2:th 26
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of bool the carrier of b1
st (for b3, b4 being Element of the carrier of b1
st b3 in b2 & b4 in b2
holds b3 * b4 in b2) &
(for b3 being Element of the carrier of b1
st b3 in b2
holds b3 " in b2)
holds b2 * b2 = b2;
:: GROUP_2:th 27
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of bool the carrier of b1
st for b3 being Element of the carrier of b1
st b3 in b2
holds b3 " in b2
holds b2 " = b2;
:: GROUP_2:th 28
theorem
for b1 being non empty multMagma
for b2, b3 being Element of bool the carrier of b1
st for b4, b5 being Element of the carrier of b1
st b4 in b2 & b5 in b3
holds b4 * b5 = b5 * b4
holds b2 * b3 = b3 * b2;
:: GROUP_2:th 29
theorem
for b1 being non empty multMagma
for b2, b3 being Element of bool the carrier of b1
st b1 is non empty Group-like associative commutative multMagma
holds b2 * b3 = b3 * b2;
:: GROUP_2:th 30
theorem
for b1 being non empty Group-like associative commutative multMagma
for b2, b3 being Element of bool the carrier of b1 holds
(b2 * b3) " = b2 " * (b3 ");
:: GROUP_2:funcnot 3 => GROUP_2:func 3
definition
let a1 be non empty multMagma;
let a2 be Element of the carrier of a1;
let a3 be Element of bool the carrier of a1;
func A2 * A3 -> Element of bool the carrier of a1 equals
{a2} * a3;
end;
:: GROUP_2:def 3
theorem
for b1 being non empty multMagma
for b2 being Element of the carrier of b1
for b3 being Element of bool the carrier of b1 holds
b2 * b3 = {b2} * b3;
:: GROUP_2:funcnot 4 => GROUP_2:func 4
definition
let a1 be non empty multMagma;
let a2 be Element of the carrier of a1;
let a3 be Element of bool the carrier of a1;
func A3 * A2 -> Element of bool the carrier of a1 equals
a3 * {a2};
end;
:: GROUP_2:def 4
theorem
for b1 being non empty multMagma
for b2 being Element of the carrier of b1
for b3 being Element of bool the carrier of b1 holds
b3 * b2 = b3 * {b2};
:: GROUP_2:th 33
theorem
for b1 being set
for b2 being non empty multMagma
for b3 being Element of bool the carrier of b2
for b4 being Element of the carrier of b2 holds
b1 in b4 * b3
iff
ex b5 being Element of the carrier of b2 st
b1 = b4 * b5 & b5 in b3;
:: GROUP_2:th 34
theorem
for b1 being set
for b2 being non empty multMagma
for b3 being Element of bool the carrier of b2
for b4 being Element of the carrier of b2 holds
b1 in b3 * b4
iff
ex b5 being Element of the carrier of b2 st
b1 = b5 * b4 & b5 in b3;
:: GROUP_2:th 35
theorem
for b1 being non empty multMagma
for b2, b3 being Element of bool the carrier of b1
for b4 being Element of the carrier of b1
st b1 is associative
holds (b4 * b2) * b3 = b4 * (b2 * b3);
:: GROUP_2:th 36
theorem
for b1 being non empty multMagma
for b2, b3 being Element of bool the carrier of b1
for b4 being Element of the carrier of b1
st b1 is associative
holds (b2 * b4) * b3 = b2 * (b4 * b3);
:: GROUP_2:th 37
theorem
for b1 being non empty multMagma
for b2, b3 being Element of bool the carrier of b1
for b4 being Element of the carrier of b1
st b1 is associative
holds (b2 * b3) * b4 = b2 * (b3 * b4);
:: GROUP_2:th 38
theorem
for b1 being non empty multMagma
for b2 being Element of bool the carrier of b1
for b3, b4 being Element of the carrier of b1
st b1 is associative
holds (b3 * b4) * b2 = b3 * (b4 * b2);
:: GROUP_2:th 39
theorem
for b1 being non empty multMagma
for b2 being Element of bool the carrier of b1
for b3, b4 being Element of the carrier of b1
st b1 is associative
holds (b3 * b2) * b4 = b3 * (b2 * b4);
:: GROUP_2:th 40
theorem
for b1 being non empty multMagma
for b2 being Element of bool the carrier of b1
for b3, b4 being Element of the carrier of b1
st b1 is associative
holds (b2 * b3) * b4 = b2 * (b3 * b4);
:: GROUP_2:th 41
theorem
for b1 being non empty multMagma
for b2 being Element of the carrier of b1 holds
({} the carrier of b1) * b2 = {} & b2 * {} the carrier of b1 = {};
:: GROUP_2:th 42
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1 holds
([#] the carrier of b1) * b2 = the carrier of b1 & b2 * [#] the carrier of b1 = the carrier of b1;
:: GROUP_2:th 43
theorem
for b1 being non empty Group-like multMagma
for b2 being Element of bool the carrier of b1 holds
(1_ b1) * b2 = b2 & b2 * 1_ b1 = b2;
:: GROUP_2:th 44
theorem
for b1 being non empty Group-like multMagma
for b2 being Element of the carrier of b1
for b3 being Element of bool the carrier of b1
st b1 is non empty Group-like associative commutative multMagma
holds b2 * b3 = b3 * b2;
:: GROUP_2:modenot 1 => GROUP_2:mode 1
definition
let a1 be non empty Group-like multMagma;
mode Subgroup of A1 -> non empty Group-like multMagma means
the carrier of it c= the carrier of a1 & the multF of it = (the multF of a1) || the carrier of it;
end;
:: GROUP_2:dfs 5
definiens
let a1, a2 be non empty Group-like multMagma;
To prove
a2 is Subgroup of a1
it is sufficient to prove
thus the carrier of a2 c= the carrier of a1 &
the multF of a2 = (the multF of a1) || the carrier of a2;
:: GROUP_2:def 5
theorem
for b1, b2 being non empty Group-like multMagma holds
b2 is Subgroup of b1
iff
the carrier of b2 c= the carrier of b1 &
the multF of b2 = (the multF of b1) || the carrier of b2;
:: GROUP_2:th 48
theorem
for b1 being non empty Group-like multMagma
for b2 being Subgroup of b1
st b1 is finite
holds b2 is finite;
:: GROUP_2:th 49
theorem
for b1 being set
for b2 being non empty Group-like multMagma
for b3 being Subgroup of b2
st b1 in b3
holds b1 in b2;
:: GROUP_2:th 50
theorem
for b1 being non empty Group-like multMagma
for b2 being Subgroup of b1
for b3 being Element of the carrier of b2 holds
b3 in b1;
:: GROUP_2:th 51
theorem
for b1 being non empty Group-like multMagma
for b2 being Subgroup of b1
for b3 being Element of the carrier of b2 holds
b3 is Element of the carrier of b1;
:: GROUP_2:th 52
theorem
for b1 being non empty Group-like multMagma
for b2, b3 being Element of the carrier of b1
for b4 being Subgroup of b1
for b5, b6 being Element of the carrier of b4
st b5 = b2 & b6 = b3
holds b5 * b6 = b2 * b3;
:: GROUP_2:condreg 1
registration
let a1 be non empty Group-like associative multMagma;
cluster -> associative (Subgroup of a1);
end;
:: GROUP_2:th 53
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1 holds
1_ b2 = 1_ b1;
:: GROUP_2:th 54
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Subgroup of b1 holds
1_ b2 = 1_ b3;
:: GROUP_2:th 55
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1 holds
1_ b1 in b2;
:: GROUP_2:th 56
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Subgroup of b1 holds
1_ b2 in b3;
:: GROUP_2:th 57
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1
for b3 being Subgroup of b1
for b4 being Element of the carrier of b3
st b4 = b2
holds b4 " = b2 ";
:: GROUP_2:th 58
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1 holds
inverse_op b2 = (inverse_op b1) | the carrier of b2;
:: GROUP_2:th 59
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of the carrier of b1
for b4 being Subgroup of b1
st b2 in b4 & b3 in b4
holds b2 * b3 in b4;
:: GROUP_2:th 60
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1
for b3 being Subgroup of b1
st b2 in b3
holds b2 " in b3;
:: GROUP_2:exreg 1
registration
let a1 be non empty Group-like associative multMagma;
cluster non empty strict unital Group-like associative Subgroup of a1;
end;
:: GROUP_2:th 61
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of bool the carrier of b1
st b2 <> {} &
(for b3, b4 being Element of the carrier of b1
st b3 in b2 & b4 in b2
holds b3 * b4 in b2) &
(for b3 being Element of the carrier of b1
st b3 in b2
holds b3 " in b2)
holds ex b3 being strict Subgroup of b1 st
the carrier of b3 = b2;
:: GROUP_2:th 62
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1
st b1 is non empty Group-like associative commutative multMagma
holds b2 is commutative;
:: GROUP_2:condreg 2
registration
let a1 be non empty Group-like associative commutative multMagma;
cluster -> commutative (Subgroup of a1);
end;
:: GROUP_2:th 63
theorem
for b1 being non empty Group-like associative multMagma holds
b1 is Subgroup of b1;
:: GROUP_2:th 64
theorem
for b1, b2 being non empty Group-like associative multMagma
st b1 is Subgroup of b2 & b2 is Subgroup of b1
holds multMagma(#the carrier of b1,the multF of b1#) = multMagma(#the carrier of b2,the multF of b2#);
:: GROUP_2:th 65
theorem
for b1, b2, b3 being non empty Group-like associative multMagma
st b1 is Subgroup of b2 & b2 is Subgroup of b3
holds b1 is Subgroup of b3;
:: GROUP_2:th 66
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Subgroup of b1
st the carrier of b2 c= the carrier of b3
holds b2 is Subgroup of b3;
:: GROUP_2:th 67
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Subgroup of b1
st for b4 being Element of the carrier of b1
st b4 in b2
holds b4 in b3
holds b2 is Subgroup of b3;
:: GROUP_2:th 68
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Subgroup of b1
st the carrier of b2 = the carrier of b3
holds multMagma(#the carrier of b2,the multF of b2#) = multMagma(#the carrier of b3,the multF of b3#);
:: GROUP_2:th 69
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Subgroup of b1
st for b4 being Element of the carrier of b1 holds
b4 in b2
iff
b4 in b3
holds multMagma(#the carrier of b2,the multF of b2#) = multMagma(#the carrier of b3,the multF of b3#);
:: GROUP_2:prednot 1 => GROUP_2:pred 1
definition
let a1 be non empty Group-like associative multMagma;
let a2, a3 be strict Subgroup of a1;
redefine pred A2 = A3 means
for b1 being Element of the carrier of a1 holds
b1 in a2
iff
b1 in a3;
symmetry;
:: for a1 being non empty Group-like associative multMagma
:: for a2, a3 being strict Subgroup of a1
:: st a2 = a3
:: holds a3 = a2;
reflexivity;
:: for a1 being non empty Group-like associative multMagma
:: for a2 being strict Subgroup of a1 holds
:: a2 = a2;
end;
:: GROUP_2:dfs 6
definiens
let a1 be non empty Group-like associative multMagma;
let a2, a3 be strict Subgroup of a1;
To prove
a2 = a3
it is sufficient to prove
thus for b1 being Element of the carrier of a1 holds
b1 in a2
iff
b1 in a3;
:: GROUP_2:def 6
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being strict Subgroup of b1 holds
b2 = b3
iff
for b4 being Element of the carrier of b1 holds
b4 in b2
iff
b4 in b3;
:: GROUP_2:th 70
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1
st the carrier of b1 c= the carrier of b2
holds multMagma(#the carrier of b2,the multF of b2#) = multMagma(#the carrier of b1,the multF of b1#);
:: GROUP_2:th 71
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1
st for b3 being Element of the carrier of b1 holds
b3 in b2
holds multMagma(#the carrier of b2,the multF of b2#) = multMagma(#the carrier of b1,the multF of b1#);
:: GROUP_2:funcnot 5 => GROUP_2:func 5
definition
let a1 be non empty Group-like associative multMagma;
func (1). A1 -> strict Subgroup of a1 means
the carrier of it = {1_ a1};
end;
:: GROUP_2:def 7
theorem
for b1 being non empty Group-like associative multMagma
for b2 being strict Subgroup of b1 holds
b2 = (1). b1
iff
the carrier of b2 = {1_ b1};
:: GROUP_2:funcnot 6 => GROUP_2:func 6
definition
let a1 be non empty Group-like associative multMagma;
func (Omega). A1 -> strict Subgroup of a1 equals
multMagma(#the carrier of a1,the multF of a1#);
end;
:: GROUP_2:def 8
theorem
for b1 being non empty Group-like associative multMagma holds
(Omega). b1 = multMagma(#the carrier of b1,the multF of b1#);
:: GROUP_2:th 75
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1 holds
(1). b2 = (1). b1;
:: GROUP_2:th 76
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Subgroup of b1 holds
(1). b2 = (1). b3;
:: GROUP_2:th 77
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1 holds
(1). b1 is Subgroup of b2;
:: GROUP_2:th 78
theorem
for b1 being non empty strict Group-like associative multMagma
for b2 being Subgroup of b1 holds
b2 is Subgroup of (Omega). b1;
:: GROUP_2:th 79
theorem
for b1 being non empty strict Group-like associative multMagma holds
b1 is Subgroup of (Omega). b1;
:: GROUP_2:th 80
theorem
for b1 being non empty Group-like associative multMagma holds
(1). b1 is finite;
:: GROUP_2:funcreg 1
registration
let a1 be non empty Group-like associative multMagma;
cluster (1). a1 -> finite strict;
end;
:: GROUP_2:exreg 2
registration
let a1 be non empty Group-like associative multMagma;
cluster non empty finite strict unital Group-like associative Subgroup of a1;
end;
:: GROUP_2:exreg 3
registration
cluster non empty finite strict unital Group-like associative multMagma;
end;
:: GROUP_2:condreg 3
registration
let a1 be non empty finite Group-like associative multMagma;
cluster -> finite (Subgroup of a1);
end;
:: GROUP_2:th 81
theorem
for b1 being non empty Group-like associative multMagma holds
ord (1). b1 = 1;
:: GROUP_2:th 82
theorem
for b1 being non empty Group-like associative multMagma
for b2 being finite strict Subgroup of b1
st ord b2 = 1
holds b2 = (1). b1;
:: GROUP_2:th 83
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1 holds
Ord b2 c= Ord b1;
:: GROUP_2:th 84
theorem
for b1 being non empty finite Group-like associative multMagma
for b2 being Subgroup of b1 holds
ord b2 <= ord b1;
:: GROUP_2:th 85
theorem
for b1 being non empty finite Group-like associative multMagma
for b2 being Subgroup of b1
st ord b1 = ord b2
holds multMagma(#the carrier of b2,the multF of b2#) = multMagma(#the carrier of b1,the multF of b1#);
:: GROUP_2:funcnot 7 => GROUP_2:func 7
definition
let a1 be non empty Group-like associative multMagma;
let a2 be Subgroup of a1;
func carr A2 -> Element of bool the carrier of a1 equals
the carrier of a2;
end;
:: GROUP_2:def 9
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1 holds
carr b2 = the carrier of b2;
:: GROUP_2:th 89
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of the carrier of b1
for b4 being Subgroup of b1
st b2 in carr b4 & b3 in carr b4
holds b2 * b3 in carr b4;
:: GROUP_2:th 90
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1
for b3 being Subgroup of b1
st b2 in carr b3
holds b2 " in carr b3;
:: GROUP_2:th 91
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1 holds
(carr b2) * carr b2 = carr b2;
:: GROUP_2:th 92
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1 holds
(carr b2) " = carr b2;
:: GROUP_2:th 93
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Subgroup of b1 holds
((carr b2) * carr b3 = (carr b3) * carr b2 implies ex b4 being strict Subgroup of b1 st
the carrier of b4 = (carr b2) * carr b3) &
(for b4 being Subgroup of b1 holds
the carrier of b4 <> (carr b2) * carr b3 or (carr b2) * carr b3 = (carr b3) * carr b2);
:: GROUP_2:th 94
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Subgroup of b1
st b1 is non empty Group-like associative commutative multMagma
holds ex b4 being strict Subgroup of b1 st
the carrier of b4 = (carr b2) * carr b3;
:: GROUP_2:funcnot 8 => GROUP_2:func 8
definition
let a1 be non empty Group-like associative multMagma;
let a2, a3 be Subgroup of a1;
func A2 /\ A3 -> strict Subgroup of a1 means
the carrier of it = (carr a2) /\ carr a3;
end;
:: GROUP_2:def 10
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Subgroup of b1
for b4 being strict Subgroup of b1 holds
b4 = b2 /\ b3
iff
the carrier of b4 = (carr b2) /\ carr b3;
:: GROUP_2:th 97
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Subgroup of b1 holds
(for b4 being Subgroup of b1
st b4 = b2 /\ b3
holds the carrier of b4 = (the carrier of b2) /\ the carrier of b3) &
(for b4 being strict Subgroup of b1
st the carrier of b4 = (the carrier of b2) /\ the carrier of b3
holds b4 = b2 /\ b3);
:: GROUP_2:th 98
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Subgroup of b1 holds
carr (b2 /\ b3) = (carr b2) /\ carr b3;
:: GROUP_2:th 99
theorem
for b1 being set
for b2 being non empty Group-like associative multMagma
for b3, b4 being Subgroup of b2 holds
b1 in b3 /\ b4
iff
b1 in b3 & b1 in b4;
:: GROUP_2:th 100
theorem
for b1 being non empty Group-like associative multMagma
for b2 being strict Subgroup of b1 holds
b2 /\ b2 = b2;
:: GROUP_2:th 101
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Subgroup of b1 holds
b2 /\ b3 = b3 /\ b2;
:: GROUP_2:funcnot 9 => GROUP_2:func 9
definition
let a1 be non empty Group-like associative multMagma;
let a2, a3 be Subgroup of a1;
redefine func a2 /\ a3 -> strict Subgroup of a1;
commutativity;
:: for a1 being non empty Group-like associative multMagma
:: for a2, a3 being Subgroup of a1 holds
:: a2 /\ a3 = a3 /\ a2;
end;
:: GROUP_2:th 102
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3, b4 being Subgroup of b1 holds
(b2 /\ b3) /\ b4 = b2 /\ (b3 /\ b4);
:: GROUP_2:th 103
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1 holds
((1). b1) /\ b2 = (1). b1 & b2 /\ (1). b1 = (1). b1;
:: GROUP_2:th 104
theorem
for b1 being non empty strict Group-like associative multMagma
for b2 being strict Subgroup of b1 holds
b2 /\ (Omega). b1 = b2 & ((Omega). b1) /\ b2 = b2;
:: GROUP_2:th 105
theorem
for b1 being non empty strict Group-like associative multMagma holds
((Omega). b1) /\ (Omega). b1 = b1;
:: GROUP_2:th 106
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Subgroup of b1 holds
b2 /\ b3 is Subgroup of b2 & b2 /\ b3 is Subgroup of b3;
:: GROUP_2:th 107
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Subgroup of b1 holds
b3 is Subgroup of b2
iff
multMagma(#the carrier of b3 /\ b2,the multF of b3 /\ b2#) = multMagma(#the carrier of b3,the multF of b3#);
:: GROUP_2:th 108
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3, b4 being Subgroup of b1
st b2 is Subgroup of b3
holds b2 /\ b4 is Subgroup of b3;
:: GROUP_2:th 109
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3, b4 being Subgroup of b1
st b2 is Subgroup of b3 & b2 is Subgroup of b4
holds b2 is Subgroup of b3 /\ b4;
:: GROUP_2:th 110
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3, b4 being Subgroup of b1
st b2 is Subgroup of b3
holds b2 /\ b4 is Subgroup of b3 /\ b4;
:: GROUP_2:th 111
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Subgroup of b1
st (b2 is finite or b3 is finite)
holds b2 /\ b3 is finite;
:: GROUP_2:funcnot 10 => GROUP_2:func 10
definition
let a1 be non empty Group-like associative multMagma;
let a2 be Subgroup of a1;
let a3 be Element of bool the carrier of a1;
func A3 * A2 -> Element of bool the carrier of a1 equals
a3 * carr a2;
end;
:: GROUP_2:def 11
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1
for b3 being Element of bool the carrier of b1 holds
b3 * b2 = b3 * carr b2;
:: GROUP_2:funcnot 11 => GROUP_2:func 11
definition
let a1 be non empty Group-like associative multMagma;
let a2 be Subgroup of a1;
let a3 be Element of bool the carrier of a1;
func A2 * A3 -> Element of bool the carrier of a1 equals
(carr a2) * a3;
end;
:: GROUP_2:def 12
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1
for b3 being Element of bool the carrier of b1 holds
b2 * b3 = (carr b2) * b3;
:: GROUP_2:th 114
theorem
for b1 being set
for b2 being non empty Group-like associative multMagma
for b3 being Element of bool the carrier of b2
for b4 being Subgroup of b2 holds
b1 in b3 * b4
iff
ex b5, b6 being Element of the carrier of b2 st
b1 = b5 * b6 & b5 in b3 & b6 in b4;
:: GROUP_2:th 115
theorem
for b1 being set
for b2 being non empty Group-like associative multMagma
for b3 being Element of bool the carrier of b2
for b4 being Subgroup of b2 holds
b1 in b4 * b3
iff
ex b5, b6 being Element of the carrier of b2 st
b1 = b5 * b6 & b5 in b4 & b6 in b3;
:: GROUP_2:th 116
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of bool the carrier of b1
for b4 being Subgroup of b1 holds
(b2 * b3) * b4 = b2 * (b3 * b4);
:: GROUP_2:th 117
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of bool the carrier of b1
for b4 being Subgroup of b1 holds
(b2 * b4) * b3 = b2 * (b4 * b3);
:: GROUP_2:th 118
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of bool the carrier of b1
for b4 being Subgroup of b1 holds
(b4 * b2) * b3 = b4 * (b2 * b3);
:: GROUP_2:th 119
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of bool the carrier of b1
for b3, b4 being Subgroup of b1 holds
(b2 * b3) * b4 = b2 * (b3 * carr b4);
:: GROUP_2:th 120
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of bool the carrier of b1
for b3, b4 being Subgroup of b1 holds
(b3 * b2) * b4 = b3 * (b2 * b4);
:: GROUP_2:th 121
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of bool the carrier of b1
for b3, b4 being Subgroup of b1 holds
(b3 * carr b4) * b2 = b3 * (b4 * b2);
:: GROUP_2:th 122
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of bool the carrier of b1
for b3 being Subgroup of b1
st b1 is non empty Group-like associative commutative multMagma
holds b2 * b3 = b3 * b2;
:: GROUP_2:funcnot 12 => GROUP_2:func 12
definition
let a1 be non empty Group-like associative multMagma;
let a2 be Subgroup of a1;
let a3 be Element of the carrier of a1;
func A3 * A2 -> Element of bool the carrier of a1 equals
a3 * carr a2;
end;
:: GROUP_2:def 13
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1
for b3 being Element of the carrier of b1 holds
b3 * b2 = b3 * carr b2;
:: GROUP_2:funcnot 13 => GROUP_2:func 13
definition
let a1 be non empty Group-like associative multMagma;
let a2 be Subgroup of a1;
let a3 be Element of the carrier of a1;
func A2 * A3 -> Element of bool the carrier of a1 equals
(carr a2) * a3;
end;
:: GROUP_2:def 14
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1
for b3 being Element of the carrier of b1 holds
b2 * b3 = (carr b2) * b3;
:: GROUP_2:th 125
theorem
for b1 being set
for b2 being non empty Group-like associative multMagma
for b3 being Element of the carrier of b2
for b4 being Subgroup of b2 holds
b1 in b3 * b4
iff
ex b5 being Element of the carrier of b2 st
b1 = b3 * b5 & b5 in b4;
:: GROUP_2:th 126
theorem
for b1 being set
for b2 being non empty Group-like associative multMagma
for b3 being Element of the carrier of b2
for b4 being Subgroup of b2 holds
b1 in b4 * b3
iff
ex b5 being Element of the carrier of b2 st
b1 = b5 * b3 & b5 in b4;
:: GROUP_2:th 127
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of the carrier of b1
for b4 being Subgroup of b1 holds
(b2 * b3) * b4 = b2 * (b3 * b4);
:: GROUP_2:th 128
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of the carrier of b1
for b4 being Subgroup of b1 holds
(b2 * b4) * b3 = b2 * (b4 * b3);
:: GROUP_2:th 129
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of the carrier of b1
for b4 being Subgroup of b1 holds
(b4 * b2) * b3 = b4 * (b2 * b3);
:: GROUP_2:th 130
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1
for b3 being Subgroup of b1 holds
b2 in b2 * b3 & b2 in b3 * b2;
:: GROUP_2:th 132
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1 holds
(1_ b1) * b2 = carr b2 & b2 * 1_ b1 = carr b2;
:: GROUP_2:th 133
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1 holds
((1). b1) * b2 = {b2} & b2 * (1). b1 = {b2};
:: GROUP_2:th 134
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1 holds
b2 * (Omega). b1 = the carrier of b1 & ((Omega). b1) * b2 = the carrier of b1;
:: GROUP_2:th 135
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1
for b3 being Subgroup of b1
st b1 is non empty Group-like associative commutative multMagma
holds b2 * b3 = b3 * b2;
:: GROUP_2:th 136
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1
for b3 being Subgroup of b1 holds
b2 in b3
iff
b2 * b3 = carr b3;
:: GROUP_2:th 137
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of the carrier of b1
for b4 being Subgroup of b1 holds
b2 * b4 = b3 * b4
iff
b3 " * b2 in b4;
:: GROUP_2:th 138
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of the carrier of b1
for b4 being Subgroup of b1 holds
b2 * b4 = b3 * b4
iff
b2 * b4 meets b3 * b4;
:: GROUP_2:th 139
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of the carrier of b1
for b4 being Subgroup of b1 holds
(b2 * b3) * b4 c= (b2 * b4) * (b3 * b4);
:: GROUP_2:th 140
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1
for b3 being Subgroup of b1 holds
carr b3 c= (b2 * b3) * (b2 " * b3) &
carr b3 c= (b2 " * b3) * (b2 * b3);
:: GROUP_2:th 141
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1
for b3 being Subgroup of b1 holds
(b2 |^ 2) * b3 c= (b2 * b3) * (b2 * b3);
:: GROUP_2:th 142
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1
for b3 being Subgroup of b1 holds
b2 in b3
iff
b3 * b2 = carr b3;
:: GROUP_2:th 143
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of the carrier of b1
for b4 being Subgroup of b1 holds
b4 * b2 = b4 * b3
iff
b3 * (b2 ") in b4;
:: GROUP_2:th 144
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of the carrier of b1
for b4 being Subgroup of b1 holds
b4 * b2 = b4 * b3
iff
b4 * b2 meets b4 * b3;
:: GROUP_2:th 145
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of the carrier of b1
for b4 being Subgroup of b1 holds
(b4 * b2) * b3 c= (b4 * b2) * (b4 * b3);
:: GROUP_2:th 146
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1
for b3 being Subgroup of b1 holds
carr b3 c= (b3 * b2) * (b3 * (b2 ")) &
carr b3 c= (b3 * (b2 ")) * (b3 * b2);
:: GROUP_2:th 147
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1
for b3 being Subgroup of b1 holds
b3 * (b2 |^ 2) c= (b3 * b2) * (b3 * b2);
:: GROUP_2:th 148
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1
for b3, b4 being Subgroup of b1 holds
b2 * (b3 /\ b4) = (b2 * b3) /\ (b2 * b4);
:: GROUP_2:th 149
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1
for b3, b4 being Subgroup of b1 holds
(b3 /\ b4) * b2 = (b3 * b2) /\ (b4 * b2);
:: GROUP_2:th 150
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1
for b3 being Subgroup of b1 holds
ex b4 being strict Subgroup of b1 st
the carrier of b4 = (b2 * b3) * (b2 ");
:: GROUP_2:th 151
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of the carrier of b1
for b4 being Subgroup of b1 holds
b2 * b4,b3 * b4 are_equipotent;
:: GROUP_2:th 152
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of the carrier of b1
for b4 being Subgroup of b1 holds
b2 * b4,b4 * b3 are_equipotent;
:: GROUP_2:th 153
theorem
for b1 being non empty Group-like associative multMagma
for b2, b3 being Element of the carrier of b1
for b4 being Subgroup of b1 holds
b4 * b2,b4 * b3 are_equipotent;
:: GROUP_2:th 154
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1
for b3 being Subgroup of b1 holds
carr b3,b2 * b3 are_equipotent & carr b3,b3 * b2 are_equipotent;
:: GROUP_2:th 155
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1
for b3 being Subgroup of b1 holds
Ord b3 = Card (b2 * b3) & Ord b3 = Card (b3 * b2);
:: GROUP_2:th 156
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Element of the carrier of b1
for b3 being finite Subgroup of b1 holds
ex b4, b5 being finite set st
b4 = b2 * b3 & b5 = b3 * b2 & ord b3 = card b4 & ord b3 = card b5;
:: GROUP_2:funcnot 14 => GROUP_2:func 14
definition
let a1 be non empty Group-like associative multMagma;
let a2 be Subgroup of a1;
func Left_Cosets A2 -> Element of bool bool the carrier of a1 means
for b1 being Element of bool the carrier of a1 holds
b1 in it
iff
ex b2 being Element of the carrier of a1 st
b1 = b2 * a2;
end;
:: GROUP_2:def 15
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1
for b3 being Element of bool bool the carrier of b1 holds
b3 = Left_Cosets b2
iff
for b4 being Element of bool the carrier of b1 holds
b4 in b3
iff
ex b5 being Element of the carrier of b1 st
b4 = b5 * b2;
:: GROUP_2:funcnot 15 => GROUP_2:func 15
definition
let a1 be non empty Group-like associative multMagma;
let a2 be Subgroup of a1;
func Right_Cosets A2 -> Element of bool bool the carrier of a1 means
for b1 being Element of bool the carrier of a1 holds
b1 in it
iff
ex b2 being Element of the carrier of a1 st
b1 = a2 * b2;
end;
:: GROUP_2:def 16
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1
for b3 being Element of bool bool the carrier of b1 holds
b3 = Right_Cosets b2
iff
for b4 being Element of bool the carrier of b1 holds
b4 in b3
iff
ex b5 being Element of the carrier of b1 st
b4 = b2 * b5;
:: GROUP_2:th 164
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1
st b1 is finite
holds Right_Cosets b2 is finite & Left_Cosets b2 is finite;
:: GROUP_2:th 165
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1 holds
carr b2 in Left_Cosets b2 & carr b2 in Right_Cosets b2;
:: GROUP_2:th 166
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1 holds
Left_Cosets b2,Right_Cosets b2 are_equipotent;
:: GROUP_2:th 167
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1 holds
union Left_Cosets b2 = the carrier of b1 & union Right_Cosets b2 = the carrier of b1;
:: GROUP_2:th 168
theorem
for b1 being non empty Group-like associative multMagma holds
Left_Cosets (1). b1 = {{b2} where b2 is Element of the carrier of b1: TRUE};
:: GROUP_2:th 169
theorem
for b1 being non empty Group-like associative multMagma holds
Right_Cosets (1). b1 = {{b2} where b2 is Element of the carrier of b1: TRUE};
:: GROUP_2:th 170
theorem
for b1 being non empty Group-like associative multMagma
for b2 being strict Subgroup of b1
st Left_Cosets b2 = {{b3} where b3 is Element of the carrier of b1: TRUE}
holds b2 = (1). b1;
:: GROUP_2:th 171
theorem
for b1 being non empty Group-like associative multMagma
for b2 being strict Subgroup of b1
st Right_Cosets b2 = {{b3} where b3 is Element of the carrier of b1: TRUE}
holds b2 = (1). b1;
:: GROUP_2:th 172
theorem
for b1 being non empty Group-like associative multMagma holds
Left_Cosets (Omega). b1 = {the carrier of b1} &
Right_Cosets (Omega). b1 = {the carrier of b1};
:: GROUP_2:th 173
theorem
for b1 being non empty strict Group-like associative multMagma
for b2 being strict Subgroup of b1
st Left_Cosets b2 = {the carrier of b1}
holds b2 = b1;
:: GROUP_2:th 174
theorem
for b1 being non empty strict Group-like associative multMagma
for b2 being strict Subgroup of b1
st Right_Cosets b2 = {the carrier of b1}
holds b2 = b1;
:: GROUP_2:funcnot 16 => GROUP_2:func 16
definition
let a1 be non empty Group-like associative multMagma;
let a2 be Subgroup of a1;
func Index A2 -> cardinal set equals
Card Left_Cosets a2;
end;
:: GROUP_2:def 17
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1 holds
Index b2 = Card Left_Cosets b2;
:: GROUP_2:th 175
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1 holds
Index b2 = Card Left_Cosets b2 & Index b2 = Card Right_Cosets b2;
:: GROUP_2:funcnot 17 => GROUP_2:func 17
definition
let a1 be non empty Group-like associative multMagma;
let a2 be Subgroup of a1;
assume Left_Cosets a2 is finite;
func index A2 -> Element of NAT means
ex b1 being finite set st
b1 = Left_Cosets a2 & it = card b1;
end;
:: GROUP_2:def 18
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1
st Left_Cosets b2 is finite
for b3 being Element of NAT holds
b3 = index b2
iff
ex b4 being finite set st
b4 = Left_Cosets b2 & b3 = card b4;
:: GROUP_2:th 176
theorem
for b1 being non empty Group-like associative multMagma
for b2 being Subgroup of b1
st Left_Cosets b2 is finite
holds (ex b3 being finite set st
b3 = Left_Cosets b2 & index b2 = card b3) &
(ex b3 being finite set st
b3 = Right_Cosets b2 & index b2 = card b3);
:: GROUP_2:th 177
theorem
for b1 being non empty finite Group-like associative multMagma
for b2 being Subgroup of b1 holds
ord b1 = (ord b2) * index b2;
:: GROUP_2:th 178
theorem
for b1 being non empty finite Group-like associative multMagma
for b2 being Subgroup of b1 holds
ord b2 divides ord b1;
:: GROUP_2:th 179
theorem
for b1 being non empty finite Group-like associative multMagma
for b2, b3 being Subgroup of b1
for b4 being Subgroup of b3
st b2 = b4
holds index b2 = (index b4) * index b3;
:: GROUP_2:th 180
theorem
for b1 being non empty Group-like associative multMagma holds
index (Omega). b1 = 1;
:: GROUP_2:th 181
theorem
for b1 being non empty strict Group-like associative multMagma
for b2 being strict Subgroup of b1
st Left_Cosets b2 is finite & index b2 = 1
holds b2 = b1;
:: GROUP_2:th 182
theorem
for b1 being non empty Group-like associative multMagma holds
Index (1). b1 = Ord b1;
:: GROUP_2:th 183
theorem
for b1 being non empty finite Group-like associative multMagma holds
index (1). b1 = ord b1;
:: GROUP_2:th 184
theorem
for b1 being non empty finite Group-like associative multMagma
for b2 being strict Subgroup of b1
st index b2 = ord b1
holds b2 = (1). b1;
:: GROUP_2:th 185
theorem
for b1 being non empty Group-like associative multMagma
for b2 being strict Subgroup of b1
st Left_Cosets b2 is finite & Index b2 = Ord b1
holds b1 is finite & b2 = (1). b1;
:: GROUP_2:th 186
theorem
for b1 being Element of NAT
for b2 being finite set
st for b3 being set
st b3 in b2
holds ex b4 being finite set st
b4 = b3 &
card b4 = b1 &
(for b5 being set
st b5 in b2 & b3 <> b5
holds b3,b5 are_equipotent & b3 misses b5)
holds ex b3 being finite set st
b3 = union b2 & card b3 = b1 * card b2;