Article GENEALG1, MML version 4.99.1005
:: GENEALG1:th 1
theorem
for b1 being non empty set
for b2, b3 being FinSequence of b1
for b4 being natural set
st b4 <= len b2
holds (b2 ^ b3) /^ b4 = (b2 /^ b4) ^ b3;
:: GENEALG1:th 2
theorem
for b1 being non empty set
for b2, b3 being FinSequence of b1
for b4 being Element of NAT holds
(b2 ^ b3) | ((len b2) + b4) = b2 ^ (b3 | b4);
:: GENEALG1:modenot 1
definition
mode Gene-Set is non empty Relation-like non-empty Function-like FinSequence-like set;
end;
:: GENEALG1:funcnot 1 => CARD_3:func 3
notation
let a1 be non empty Relation-like non-empty Function-like FinSequence-like set;
synonym GA-Space a1 for Union a1;
end;
:: GENEALG1:funcreg 1
registration
let a1 be non empty Relation-like non-empty Function-like set;
cluster Union a1 -> non empty;
end;
:: GENEALG1:modenot 2 => GENEALG1:mode 1
definition
let a1 be non empty Relation-like non-empty Function-like FinSequence-like set;
mode Individual of A1 -> FinSequence of Union a1 means
len it = len a1 &
(for b1 being Element of NAT
st b1 in dom it
holds it . b1 in a1 . b1);
end;
:: GENEALG1:dfs 1
definiens
let a1 be non empty Relation-like non-empty Function-like FinSequence-like set;
let a2 be FinSequence of Union a1;
To prove
a2 is Individual of a1
it is sufficient to prove
thus len a2 = len a1 &
(for b1 being Element of NAT
st b1 in dom a2
holds a2 . b1 in a1 . b1);
:: GENEALG1:def 1
theorem
for b1 being non empty Relation-like non-empty Function-like FinSequence-like set
for b2 being FinSequence of Union b1 holds
b2 is Individual of b1
iff
len b2 = len b1 &
(for b3 being Element of NAT
st b3 in dom b2
holds b2 . b3 in b1 . b3);
:: GENEALG1:funcnot 2 => GENEALG1:func 1
definition
let a1 be non empty Relation-like non-empty Function-like FinSequence-like set;
let a2, a3 be FinSequence of Union a1;
let a4 be Element of NAT;
func crossover(A2,A3,A4) -> FinSequence of Union a1 equals
(a2 | a4) ^ (a3 /^ a4);
end;
:: GENEALG1:def 2
theorem
for b1 being non empty Relation-like non-empty Function-like FinSequence-like set
for b2, b3 being FinSequence of Union b1
for b4 being Element of NAT holds
crossover(b2,b3,b4) = (b2 | b4) ^ (b3 /^ b4);
:: GENEALG1:funcnot 3 => GENEALG1:func 2
definition
let a1 be non empty Relation-like non-empty Function-like FinSequence-like set;
let a2, a3 be FinSequence of Union a1;
let a4, a5 be Element of NAT;
func crossover(A2,A3,A4,A5) -> FinSequence of Union a1 equals
crossover(crossover(a2,a3,a4),crossover(a3,a2,a4),a5);
end;
:: GENEALG1:def 3
theorem
for b1 being non empty Relation-like non-empty Function-like FinSequence-like set
for b2, b3 being FinSequence of Union b1
for b4, b5 being Element of NAT holds
crossover(b2,b3,b4,b5) = crossover(crossover(b2,b3,b4),crossover(b3,b2,b4),b5);
:: GENEALG1:funcnot 4 => GENEALG1:func 3
definition
let a1 be non empty Relation-like non-empty Function-like FinSequence-like set;
let a2, a3 be FinSequence of Union a1;
let a4, a5, a6 be Element of NAT;
func crossover(A2,A3,A4,A5,A6) -> FinSequence of Union a1 equals
crossover(crossover(a2,a3,a4,a5),crossover(a3,a2,a4,a5),a6);
end;
:: GENEALG1:def 4
theorem
for b1 being non empty Relation-like non-empty Function-like FinSequence-like set
for b2, b3 being FinSequence of Union b1
for b4, b5, b6 being Element of NAT holds
crossover(b2,b3,b4,b5,b6) = crossover(crossover(b2,b3,b4,b5),crossover(b3,b2,b4,b5),b6);
:: GENEALG1:funcnot 5 => GENEALG1:func 4
definition
let a1 be non empty Relation-like non-empty Function-like FinSequence-like set;
let a2, a3 be FinSequence of Union a1;
let a4, a5, a6, a7 be Element of NAT;
func crossover(A2,A3,A4,A5,A6,A7) -> FinSequence of Union a1 equals
crossover(crossover(a2,a3,a4,a5,a6),crossover(a3,a2,a4,a5,a6),a7);
end;
:: GENEALG1:def 5
theorem
for b1 being non empty Relation-like non-empty Function-like FinSequence-like set
for b2, b3 being FinSequence of Union b1
for b4, b5, b6, b7 being Element of NAT holds
crossover(b2,b3,b4,b5,b6,b7) = crossover(crossover(b2,b3,b4,b5,b6),crossover(b3,b2,b4,b5,b6),b7);
:: GENEALG1:funcnot 6 => GENEALG1:func 5
definition
let a1 be non empty Relation-like non-empty Function-like FinSequence-like set;
let a2, a3 be FinSequence of Union a1;
let a4, a5, a6, a7, a8 be Element of NAT;
func crossover(A2,A3,A4,A5,A6,A7,A8) -> FinSequence of Union a1 equals
crossover(crossover(a2,a3,a4,a5,a6,a7),crossover(a3,a2,a4,a5,a6,a7),a8);
end;
:: GENEALG1:def 6
theorem
for b1 being non empty Relation-like non-empty Function-like FinSequence-like set
for b2, b3 being FinSequence of Union b1
for b4, b5, b6, b7, b8 being Element of NAT holds
crossover(b2,b3,b4,b5,b6,b7,b8) = crossover(crossover(b2,b3,b4,b5,b6,b7),crossover(b3,b2,b4,b5,b6,b7),b8);
:: GENEALG1:funcnot 7 => GENEALG1:func 6
definition
let a1 be non empty Relation-like non-empty Function-like FinSequence-like set;
let a2, a3 be FinSequence of Union a1;
let a4, a5, a6, a7, a8, a9 be Element of NAT;
func crossover(A2,A3,A4,A5,A6,A7,A8,A9) -> FinSequence of Union a1 equals
crossover(crossover(a2,a3,a4,a5,a6,a7,a8),crossover(a3,a2,a4,a5,a6,a7,a8),a9);
end;
:: GENEALG1:def 7
theorem
for b1 being non empty Relation-like non-empty Function-like FinSequence-like set
for b2, b3 being FinSequence of Union b1
for b4, b5, b6, b7, b8, b9 being Element of NAT holds
crossover(b2,b3,b4,b5,b6,b7,b8,b9) = crossover(crossover(b2,b3,b4,b5,b6,b7,b8),crossover(b3,b2,b4,b5,b6,b7,b8),b9);
:: GENEALG1:th 3
theorem
for b1 being Element of NAT
for b2 being non empty Relation-like non-empty Function-like FinSequence-like set
for b3, b4 being Individual of b2 holds
crossover(b3,b4,b1) is Individual of b2;
:: GENEALG1:funcnot 8 => GENEALG1:func 7
definition
let a1 be non empty Relation-like non-empty Function-like FinSequence-like set;
let a2, a3 be Individual of a1;
let a4 be Element of NAT;
redefine func crossover(a2,a3,a4) -> Individual of a1;
end;
:: GENEALG1:th 4
theorem
for b1 being non empty Relation-like non-empty Function-like FinSequence-like set
for b2, b3 being Individual of b1 holds
crossover(b2,b3,0) = b3;
:: GENEALG1:th 5
theorem
for b1 being Element of NAT
for b2 being non empty Relation-like non-empty Function-like FinSequence-like set
for b3, b4 being Individual of b2
st len b3 <= b1
holds crossover(b3,b4,b1) = b3;
:: GENEALG1:th 6
theorem
for b1, b2 being Element of NAT
for b3 being non empty Relation-like non-empty Function-like FinSequence-like set
for b4, b5 being Individual of b3 holds
crossover(b4,b5,b1,b2) is Individual of b3;
:: GENEALG1:funcnot 9 => GENEALG1:func 8
definition
let a1 be non empty Relation-like non-empty Function-like FinSequence-like set;
let a2, a3 be Individual of a1;
let a4, a5 be Element of NAT;
redefine func crossover(a2,a3,a4,a5) -> Individual of a1;
end;
:: GENEALG1:th 7
theorem
for b1 being Element of NAT
for b2 being non empty Relation-like non-empty Function-like FinSequence-like set
for b3, b4 being Individual of b2 holds
crossover(b3,b4,0,b1) = crossover(b4,b3,b1);
:: GENEALG1:th 8
theorem
for b1 being Element of NAT
for b2 being non empty Relation-like non-empty Function-like FinSequence-like set
for b3, b4 being Individual of b2 holds
crossover(b3,b4,b1,0) = crossover(b4,b3,b1);
:: GENEALG1:th 9
theorem
for b1, b2 being Element of NAT
for b3 being non empty Relation-like non-empty Function-like FinSequence-like set
for b4, b5 being Individual of b3
st len b4 <= b1
holds crossover(b4,b5,b1,b2) = crossover(b4,b5,b2);
:: GENEALG1:th 10
theorem
for b1, b2 being Element of NAT
for b3 being non empty Relation-like non-empty Function-like FinSequence-like set
for b4, b5 being Individual of b3
st len b4 <= b1
holds crossover(b4,b5,b2,b1) = crossover(b4,b5,b2);
:: GENEALG1:th 11
theorem
for b1, b2 being Element of NAT
for b3 being non empty Relation-like non-empty Function-like FinSequence-like set
for b4, b5 being Individual of b3
st len b4 <= b1 & len b4 <= b2
holds crossover(b4,b5,b1,b2) = b4;
:: GENEALG1:th 12
theorem
for b1 being Element of NAT
for b2 being non empty Relation-like non-empty Function-like FinSequence-like set
for b3, b4 being Individual of b2 holds
crossover(b3,b4,b1,b1) = b3;
:: GENEALG1:th 13
theorem
for b1, b2 being Element of NAT
for b3 being non empty Relation-like non-empty Function-like FinSequence-like set
for b4, b5 being Individual of b3 holds
crossover(b4,b5,b1,b2) = crossover(b4,b5,b2,b1);
:: GENEALG1:th 14
theorem
for b1, b2, b3 being Element of NAT
for b4 being non empty Relation-like non-empty Function-like FinSequence-like set
for b5, b6 being Individual of b4 holds
crossover(b5,b6,b1,b2,b3) is Individual of b4;
:: GENEALG1:funcnot 10 => GENEALG1:func 9
definition
let a1 be non empty Relation-like non-empty Function-like FinSequence-like set;
let a2, a3 be Individual of a1;
let a4, a5, a6 be Element of NAT;
redefine func crossover(a2,a3,a4,a5,a6) -> Individual of a1;
end;
:: GENEALG1:th 15
theorem
for b1, b2, b3 being Element of NAT
for b4 being non empty Relation-like non-empty Function-like FinSequence-like set
for b5, b6 being Individual of b4 holds
crossover(b5,b6,0,b1,b2) = crossover(b6,b5,b1,b2) &
crossover(b5,b6,b3,0,b2) = crossover(b6,b5,b3,b2) &
crossover(b5,b6,b3,b1,0) = crossover(b6,b5,b3,b1);
:: GENEALG1:th 16
theorem
for b1, b2, b3 being Element of NAT
for b4 being non empty Relation-like non-empty Function-like FinSequence-like set
for b5, b6 being Individual of b4 holds
crossover(b5,b6,0,0,b1) = crossover(b5,b6,b1) &
crossover(b5,b6,b2,0,0) = crossover(b5,b6,b2) &
crossover(b5,b6,0,b3,0) = crossover(b5,b6,b3);
:: GENEALG1:th 17
theorem
for b1 being non empty Relation-like non-empty Function-like FinSequence-like set
for b2, b3 being Individual of b1 holds
crossover(b2,b3,0,0,0) = b3;
:: GENEALG1:th 18
theorem
for b1, b2, b3 being Element of NAT
for b4 being non empty Relation-like non-empty Function-like FinSequence-like set
for b5, b6 being Individual of b4
st len b5 <= b1
holds crossover(b5,b6,b1,b2,b3) = crossover(b5,b6,b2,b3);
:: GENEALG1:th 19
theorem
for b1, b2, b3 being Element of NAT
for b4 being non empty Relation-like non-empty Function-like FinSequence-like set
for b5, b6 being Individual of b4
st len b5 <= b1
holds crossover(b5,b6,b2,b1,b3) = crossover(b5,b6,b2,b3);
:: GENEALG1:th 20
theorem
for b1, b2, b3 being Element of NAT
for b4 being non empty Relation-like non-empty Function-like FinSequence-like set
for b5, b6 being Individual of b4
st len b5 <= b1
holds crossover(b5,b6,b2,b3,b1) = crossover(b5,b6,b2,b3);
:: GENEALG1:th 21
theorem
for b1, b2, b3 being Element of NAT
for b4 being non empty Relation-like non-empty Function-like FinSequence-like set
for b5, b6 being Individual of b4
st len b5 <= b1 & len b5 <= b2
holds crossover(b5,b6,b1,b2,b3) = crossover(b5,b6,b3);
:: GENEALG1:th 22
theorem
for b1, b2, b3 being Element of NAT
for b4 being non empty Relation-like non-empty Function-like FinSequence-like set
for b5, b6 being Individual of b4
st len b5 <= b1 & len b5 <= b2
holds crossover(b5,b6,b1,b3,b2) = crossover(b5,b6,b3);
:: GENEALG1:th 23
theorem
for b1, b2, b3 being Element of NAT
for b4 being non empty Relation-like non-empty Function-like FinSequence-like set
for b5, b6 being Individual of b4
st len b5 <= b1 & len b5 <= b2
holds crossover(b5,b6,b3,b1,b2) = crossover(b5,b6,b3);
:: GENEALG1:th 24
theorem
for b1, b2, b3 being Element of NAT
for b4 being non empty Relation-like non-empty Function-like FinSequence-like set
for b5, b6 being Individual of b4
st len b5 <= b1 & len b5 <= b2 & len b5 <= b3
holds crossover(b5,b6,b1,b2,b3) = b5;
:: GENEALG1:th 25
theorem
for b1, b2, b3 being Element of NAT
for b4 being non empty Relation-like non-empty Function-like FinSequence-like set
for b5, b6 being Individual of b4 holds
crossover(b5,b6,b1,b2,b3) = crossover(b5,b6,b2,b1,b3) & crossover(b5,b6,b1,b2,b3) = crossover(b5,b6,b1,b3,b2);
:: GENEALG1:th 26
theorem
for b1, b2, b3 being Element of NAT
for b4 being non empty Relation-like non-empty Function-like FinSequence-like set
for b5, b6 being Individual of b4 holds
crossover(b5,b6,b1,b2,b3) = crossover(b5,b6,b3,b1,b2);
:: GENEALG1:th 27
theorem
for b1, b2, b3 being Element of NAT
for b4 being non empty Relation-like non-empty Function-like FinSequence-like set
for b5, b6 being Individual of b4 holds
crossover(b5,b6,b1,b1,b2) = crossover(b5,b6,b2) & crossover(b5,b6,b1,b3,b1) = crossover(b5,b6,b3) & crossover(b5,b6,b1,b3,b3) = crossover(b5,b6,b1);
:: GENEALG1:th 28
theorem
for b1, b2, b3, b4 being Element of NAT
for b5 being non empty Relation-like non-empty Function-like FinSequence-like set
for b6, b7 being Individual of b5 holds
crossover(b6,b7,b1,b2,b3,b4) is Individual of b5;
:: GENEALG1:funcnot 11 => GENEALG1:func 10
definition
let a1 be non empty Relation-like non-empty Function-like FinSequence-like set;
let a2, a3 be Individual of a1;
let a4, a5, a6, a7 be Element of NAT;
redefine func crossover(a2,a3,a4,a5,a6,a7) -> Individual of a1;
end;
:: GENEALG1:th 29
theorem
for b1, b2, b3, b4 being Element of NAT
for b5 being non empty Relation-like non-empty Function-like FinSequence-like set
for b6, b7 being Individual of b5 holds
crossover(b6,b7,0,b1,b2,b3) = crossover(b7,b6,b1,b2,b3) &
crossover(b6,b7,b4,0,b2,b3) = crossover(b7,b6,b4,b2,b3) &
crossover(b6,b7,b4,b1,0,b3) = crossover(b7,b6,b4,b1,b3) &
crossover(b6,b7,b4,b1,b2,0) = crossover(b7,b6,b4,b1,b2);
:: GENEALG1:th 30
theorem
for b1, b2, b3, b4 being Element of NAT
for b5 being non empty Relation-like non-empty Function-like FinSequence-like set
for b6, b7 being Individual of b5 holds
crossover(b6,b7,0,0,b1,b2) = crossover(b6,b7,b1,b2) &
crossover(b6,b7,0,b3,0,b2) = crossover(b6,b7,b3,b2) &
crossover(b6,b7,0,b3,b1,0) = crossover(b6,b7,b3,b1) &
crossover(b6,b7,b4,0,b1,0) = crossover(b6,b7,b4,b1) &
crossover(b6,b7,b4,0,0,b2) = crossover(b6,b7,b4,b2) &
crossover(b6,b7,b4,b3,0,0) = crossover(b6,b7,b4,b3);
:: GENEALG1:th 31
theorem
for b1, b2, b3, b4 being Element of NAT
for b5 being non empty Relation-like non-empty Function-like FinSequence-like set
for b6, b7 being Individual of b5 holds
crossover(b6,b7,b1,0,0,0) = crossover(b7,b6,b1) &
crossover(b6,b7,0,b2,0,0) = crossover(b7,b6,b2) &
crossover(b6,b7,0,0,b3,0) = crossover(b7,b6,b3) &
crossover(b6,b7,0,0,0,b4) = crossover(b7,b6,b4);
:: GENEALG1:th 32
theorem
for b1 being non empty Relation-like non-empty Function-like FinSequence-like set
for b2, b3 being Individual of b1 holds
crossover(b2,b3,0,0,0,0) = b2;
:: GENEALG1:th 33
theorem
for b1, b2, b3, b4 being Element of NAT
for b5 being non empty Relation-like non-empty Function-like FinSequence-like set
for b6, b7 being Individual of b5 holds
(len b6 <= b1 implies crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b2,b3,b4)) &
(len b6 <= b2 implies crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b1,b3,b4)) &
(len b6 <= b3 implies crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b1,b2,b4)) &
(len b6 <= b4 implies crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b1,b2,b3));
:: GENEALG1:th 34
theorem
for b1, b2, b3, b4 being Element of NAT
for b5 being non empty Relation-like non-empty Function-like FinSequence-like set
for b6, b7 being Individual of b5 holds
(len b6 <= b1 & len b6 <= b2 implies crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b3,b4)) &
(len b6 <= b1 & len b6 <= b3 implies crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b2,b4)) &
(len b6 <= b1 & len b6 <= b4 implies crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b2,b3)) &
(len b6 <= b2 & len b6 <= b3 implies crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b1,b4)) &
(len b6 <= b2 & len b6 <= b4 implies crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b1,b3)) &
(len b6 <= b3 & len b6 <= b4 implies crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b1,b2));
:: GENEALG1:th 35
theorem
for b1, b2, b3, b4 being Element of NAT
for b5 being non empty Relation-like non-empty Function-like FinSequence-like set
for b6, b7 being Individual of b5 holds
(len b6 <= b1 & len b6 <= b2 & len b6 <= b3 implies crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b4)) &
(len b6 <= b1 & len b6 <= b2 & len b6 <= b4 implies crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b3)) &
(len b6 <= b1 & len b6 <= b3 & len b6 <= b4 implies crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b2)) &
(len b6 <= b2 & len b6 <= b3 & len b6 <= b4 implies crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b1));
:: GENEALG1:th 36
theorem
for b1, b2, b3, b4 being Element of NAT
for b5 being non empty Relation-like non-empty Function-like FinSequence-like set
for b6, b7 being Individual of b5
st len b6 <= b1 & len b6 <= b2 & len b6 <= b3 & len b6 <= b4
holds crossover(b6,b7,b1,b2,b3,b4) = b6;
:: GENEALG1:th 37
theorem
for b1, b2, b3, b4 being Element of NAT
for b5 being non empty Relation-like non-empty Function-like FinSequence-like set
for b6, b7 being Individual of b5 holds
crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b1,b2,b4,b3) &
crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b1,b3,b2,b4) &
crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b1,b3,b4,b2) &
crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b1,b4,b3,b2) &
crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b2,b1,b3,b4) &
crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b2,b1,b4,b3) &
crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b2,b3,b1,b4) &
crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b2,b3,b4,b1) &
crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b2,b4,b1,b3) &
crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b2,b4,b3,b1) &
crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b3,b2,b1,b4) &
crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b3,b2,b4,b1) &
crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b3,b4,b1,b2) &
crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b3,b4,b2,b1) &
crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b4,b2,b3,b1) &
crossover(b6,b7,b1,b2,b3,b4) = crossover(b6,b7,b4,b3,b2,b1);
:: GENEALG1:th 38
theorem
for b1, b2, b3, b4 being Element of NAT
for b5 being non empty Relation-like non-empty Function-like FinSequence-like set
for b6, b7 being Individual of b5 holds
crossover(b6,b7,b1,b1,b2,b3) = crossover(b6,b7,b2,b3) & crossover(b6,b7,b1,b4,b1,b3) = crossover(b6,b7,b4,b3) & crossover(b6,b7,b1,b4,b2,b1) = crossover(b6,b7,b4,b2) & crossover(b6,b7,b1,b4,b4,b3) = crossover(b6,b7,b1,b3) & crossover(b6,b7,b1,b4,b2,b4) = crossover(b6,b7,b1,b2) & crossover(b6,b7,b1,b4,b2,b2) = crossover(b6,b7,b1,b4);
:: GENEALG1:th 39
theorem
for b1, b2, b3 being Element of NAT
for b4 being non empty Relation-like non-empty Function-like FinSequence-like set
for b5, b6 being Individual of b4 holds
crossover(b5,b6,b1,b1,b2,b2) = b5 & crossover(b5,b6,b1,b3,b1,b3) = b5 & crossover(b5,b6,b1,b3,b3,b1) = b5;
:: GENEALG1:th 40
theorem
for b1, b2, b3, b4, b5 being Element of NAT
for b6 being non empty Relation-like non-empty Function-like FinSequence-like set
for b7, b8 being Individual of b6 holds
crossover(b7,b8,b1,b2,b3,b4,b5) is Individual of b6;
:: GENEALG1:funcnot 12 => GENEALG1:func 11
definition
let a1 be non empty Relation-like non-empty Function-like FinSequence-like set;
let a2, a3 be Individual of a1;
let a4, a5, a6, a7, a8 be Element of NAT;
redefine func crossover(a2,a3,a4,a5,a6,a7,a8) -> Individual of a1;
end;
:: GENEALG1:th 41
theorem
for b1, b2, b3, b4, b5 being Element of NAT
for b6 being non empty Relation-like non-empty Function-like FinSequence-like set
for b7, b8 being Individual of b6 holds
crossover(b7,b8,0,b1,b2,b3,b4) = crossover(b8,b7,b1,b2,b3,b4) &
crossover(b7,b8,b5,0,b2,b3,b4) = crossover(b8,b7,b5,b2,b3,b4) &
crossover(b7,b8,b5,b1,0,b3,b4) = crossover(b8,b7,b5,b1,b3,b4) &
crossover(b7,b8,b5,b1,b2,0,b4) = crossover(b8,b7,b5,b1,b2,b4) &
crossover(b7,b8,b5,b1,b2,b3,0) = crossover(b8,b7,b5,b1,b2,b3);
:: GENEALG1:th 42
theorem
for b1, b2, b3, b4, b5 being Element of NAT
for b6 being non empty Relation-like non-empty Function-like FinSequence-like set
for b7, b8 being Individual of b6 holds
crossover(b7,b8,0,0,b1,b2,b3) = crossover(b7,b8,b1,b2,b3) &
crossover(b7,b8,0,b4,0,b2,b3) = crossover(b7,b8,b4,b2,b3) &
crossover(b7,b8,0,b4,b1,0,b3) = crossover(b7,b8,b4,b1,b3) &
crossover(b7,b8,0,b4,b1,b2,0) = crossover(b7,b8,b4,b1,b2) &
crossover(b7,b8,b5,0,0,b2,b3) = crossover(b7,b8,b5,b2,b3) &
crossover(b7,b8,b5,0,b1,0,b3) = crossover(b7,b8,b5,b1,b3) &
crossover(b7,b8,b5,0,b1,b2,0) = crossover(b7,b8,b5,b1,b2) &
crossover(b7,b8,b5,b4,0,0,b3) = crossover(b7,b8,b5,b4,b3) &
crossover(b7,b8,b5,b4,0,b2,0) = crossover(b7,b8,b5,b4,b2) &
crossover(b7,b8,b5,b4,b1,0,0) = crossover(b7,b8,b5,b4,b1);
:: GENEALG1:th 43
theorem
for b1, b2, b3, b4, b5 being Element of NAT
for b6 being non empty Relation-like non-empty Function-like FinSequence-like set
for b7, b8 being Individual of b6 holds
crossover(b7,b8,0,0,0,b1,b2) = crossover(b8,b7,b1,b2) &
crossover(b7,b8,0,0,b3,0,b2) = crossover(b8,b7,b3,b2) &
crossover(b7,b8,0,0,b3,b1,0) = crossover(b8,b7,b3,b1) &
crossover(b7,b8,0,b4,0,0,b2) = crossover(b8,b7,b4,b2) &
crossover(b7,b8,0,b4,0,b1,0) = crossover(b8,b7,b4,b1) &
crossover(b7,b8,0,b4,b3,0,0) = crossover(b8,b7,b4,b3) &
crossover(b7,b8,b5,0,0,0,b2) = crossover(b8,b7,b5,b2) &
crossover(b7,b8,b5,0,0,b1,0) = crossover(b8,b7,b5,b1) &
crossover(b7,b8,b5,0,b3,0,0) = crossover(b8,b7,b5,b3) &
crossover(b7,b8,b5,b4,0,0,0) = crossover(b8,b7,b5,b4);
:: GENEALG1:th 44
theorem
for b1, b2, b3, b4, b5 being Element of NAT
for b6 being non empty Relation-like non-empty Function-like FinSequence-like set
for b7, b8 being Individual of b6 holds
crossover(b7,b8,0,0,0,0,b1) = crossover(b7,b8,b1) &
crossover(b7,b8,0,0,0,b2,0) = crossover(b7,b8,b2) &
crossover(b7,b8,0,0,b3,0,0) = crossover(b7,b8,b3) &
crossover(b7,b8,0,b4,0,0,0) = crossover(b7,b8,b4) &
crossover(b7,b8,b5,0,0,0,0) = crossover(b7,b8,b5);
:: GENEALG1:th 45
theorem
for b1 being non empty Relation-like non-empty Function-like FinSequence-like set
for b2, b3 being Individual of b1 holds
crossover(b2,b3,0,0,0,0,0) = b3;
:: GENEALG1:th 46
theorem
for b1, b2, b3, b4, b5 being Element of NAT
for b6 being non empty Relation-like non-empty Function-like FinSequence-like set
for b7, b8 being Individual of b6 holds
(len b7 <= b1 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b2,b3,b4,b5)) &
(len b7 <= b2 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b1,b3,b4,b5)) &
(len b7 <= b3 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b1,b2,b4,b5)) &
(len b7 <= b4 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b1,b2,b3,b5)) &
(len b7 <= b5 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b1,b2,b3,b4));
:: GENEALG1:th 47
theorem
for b1, b2, b3, b4, b5 being Element of NAT
for b6 being non empty Relation-like non-empty Function-like FinSequence-like set
for b7, b8 being Individual of b6 holds
(len b7 <= b1 & len b7 <= b2 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b3,b4,b5)) &
(len b7 <= b1 & len b7 <= b3 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b2,b4,b5)) &
(len b7 <= b1 & len b7 <= b4 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b2,b3,b5)) &
(len b7 <= b1 & len b7 <= b5 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b2,b3,b4)) &
(len b7 <= b2 & len b7 <= b3 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b1,b4,b5)) &
(len b7 <= b2 & len b7 <= b4 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b1,b3,b5)) &
(len b7 <= b2 & len b7 <= b5 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b1,b3,b4)) &
(len b7 <= b3 & len b7 <= b4 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b1,b2,b5)) &
(len b7 <= b3 & len b7 <= b5 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b1,b2,b4)) &
(len b7 <= b4 & len b7 <= b5 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b1,b2,b3));
:: GENEALG1:th 48
theorem
for b1, b2, b3, b4, b5 being Element of NAT
for b6 being non empty Relation-like non-empty Function-like FinSequence-like set
for b7, b8 being Individual of b6 holds
(len b7 <= b1 & len b7 <= b2 & len b7 <= b3 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b4,b5)) &
(len b7 <= b1 & len b7 <= b2 & len b7 <= b4 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b3,b5)) &
(len b7 <= b1 & len b7 <= b2 & len b7 <= b5 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b3,b4)) &
(len b7 <= b1 & len b7 <= b3 & len b7 <= b4 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b2,b5)) &
(len b7 <= b1 & len b7 <= b3 & len b7 <= b5 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b2,b4)) &
(len b7 <= b1 & len b7 <= b4 & len b7 <= b5 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b2,b3)) &
(len b7 <= b2 & len b7 <= b3 & len b7 <= b4 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b1,b5)) &
(len b7 <= b2 & len b7 <= b3 & len b7 <= b5 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b1,b4)) &
(len b7 <= b2 & len b7 <= b4 & len b7 <= b5 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b1,b3)) &
(len b7 <= b3 & len b7 <= b4 & len b7 <= b5 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b1,b2));
:: GENEALG1:th 49
theorem
for b1, b2, b3, b4, b5 being Element of NAT
for b6 being non empty Relation-like non-empty Function-like FinSequence-like set
for b7, b8 being Individual of b6 holds
(len b7 <= b1 & len b7 <= b2 & len b7 <= b3 & len b7 <= b4 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b5)) &
(len b7 <= b1 & len b7 <= b2 & len b7 <= b3 & len b7 <= b5 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b4)) &
(len b7 <= b1 & len b7 <= b2 & len b7 <= b4 & len b7 <= b5 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b3)) &
(len b7 <= b1 & len b7 <= b3 & len b7 <= b4 & len b7 <= b5 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b2)) &
(len b7 <= b2 & len b7 <= b3 & len b7 <= b4 & len b7 <= b5 implies crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b1));
:: GENEALG1:th 50
theorem
for b1, b2, b3, b4, b5 being Element of NAT
for b6 being non empty Relation-like non-empty Function-like FinSequence-like set
for b7, b8 being Individual of b6
st len b7 <= b1 & len b7 <= b2 & len b7 <= b3 & len b7 <= b4 & len b7 <= b5
holds crossover(b7,b8,b1,b2,b3,b4,b5) = b7;
:: GENEALG1:th 51
theorem
for b1, b2, b3, b4, b5 being Element of NAT
for b6 being non empty Relation-like non-empty Function-like FinSequence-like set
for b7, b8 being Individual of b6 holds
crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b2,b1,b3,b4,b5) &
crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b3,b2,b1,b4,b5) &
crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b4,b2,b3,b1,b5) &
crossover(b7,b8,b1,b2,b3,b4,b5) = crossover(b7,b8,b5,b2,b3,b4,b1);
:: GENEALG1:th 52
theorem
for b1, b2, b3, b4, b5 being Element of NAT
for b6 being non empty Relation-like non-empty Function-like FinSequence-like set
for b7, b8 being Individual of b6 holds
crossover(b7,b8,b1,b1,b2,b3,b4) = crossover(b7,b8,b2,b3,b4) &
crossover(b7,b8,b1,b5,b1,b3,b4) = crossover(b7,b8,b5,b3,b4) &
crossover(b7,b8,b1,b5,b2,b1,b4) = crossover(b7,b8,b5,b2,b4) &
crossover(b7,b8,b1,b5,b2,b3,b1) = crossover(b7,b8,b5,b2,b3);
:: GENEALG1:th 53
theorem
for b1, b2, b3, b4, b5, b6 being Element of NAT
for b7 being non empty Relation-like non-empty Function-like FinSequence-like set
for b8, b9 being Individual of b7 holds
crossover(b8,b9,b1,b2,b3,b4,b5,b6) is Individual of b7;
:: GENEALG1:funcnot 13 => GENEALG1:func 12
definition
let a1 be non empty Relation-like non-empty Function-like FinSequence-like set;
let a2, a3 be Individual of a1;
let a4, a5, a6, a7, a8, a9 be Element of NAT;
redefine func crossover(a2,a3,a4,a5,a6,a7,a8,a9) -> Individual of a1;
end;
:: GENEALG1:th 54
theorem
for b1, b2, b3, b4, b5, b6 being Element of NAT
for b7 being non empty Relation-like non-empty Function-like FinSequence-like set
for b8, b9 being Individual of b7 holds
crossover(b8,b9,0,b1,b2,b3,b4,b5) = crossover(b9,b8,b1,b2,b3,b4,b5) &
crossover(b8,b9,b6,0,b2,b3,b4,b5) = crossover(b9,b8,b6,b2,b3,b4,b5) &
crossover(b8,b9,b6,b1,0,b3,b4,b5) = crossover(b9,b8,b6,b1,b3,b4,b5) &
crossover(b8,b9,b6,b1,b2,0,b4,b5) = crossover(b9,b8,b6,b1,b2,b4,b5) &
crossover(b8,b9,b6,b1,b2,b3,0,b5) = crossover(b9,b8,b6,b1,b2,b3,b5) &
crossover(b8,b9,b6,b1,b2,b3,b4,0) = crossover(b9,b8,b6,b1,b2,b3,b4);
:: GENEALG1:th 55
theorem
for b1, b2, b3, b4, b5, b6 being Element of NAT
for b7 being non empty Relation-like non-empty Function-like FinSequence-like set
for b8, b9 being Individual of b7 holds
(len b8 <= b1 implies crossover(b8,b9,b1,b2,b3,b4,b5,b6) = crossover(b8,b9,b2,b3,b4,b5,b6)) &
(len b8 <= b2 implies crossover(b8,b9,b1,b2,b3,b4,b5,b6) = crossover(b8,b9,b1,b3,b4,b5,b6)) &
(len b8 <= b3 implies crossover(b8,b9,b1,b2,b3,b4,b5,b6) = crossover(b8,b9,b1,b2,b4,b5,b6)) &
(len b8 <= b4 implies crossover(b8,b9,b1,b2,b3,b4,b5,b6) = crossover(b8,b9,b1,b2,b3,b5,b6)) &
(len b8 <= b5 implies crossover(b8,b9,b1,b2,b3,b4,b5,b6) = crossover(b8,b9,b1,b2,b3,b4,b6)) &
(len b8 <= b6 implies crossover(b8,b9,b1,b2,b3,b4,b5,b6) = crossover(b8,b9,b1,b2,b3,b4,b5));
:: GENEALG1:th 56
theorem
for b1, b2, b3, b4, b5, b6 being Element of NAT
for b7 being non empty Relation-like non-empty Function-like FinSequence-like set
for b8, b9 being Individual of b7 holds
crossover(b8,b9,b1,b2,b3,b4,b5,b6) = crossover(b8,b9,b2,b1,b3,b4,b5,b6) &
crossover(b8,b9,b1,b2,b3,b4,b5,b6) = crossover(b8,b9,b3,b2,b1,b4,b5,b6) &
crossover(b8,b9,b1,b2,b3,b4,b5,b6) = crossover(b8,b9,b4,b2,b3,b1,b5,b6) &
crossover(b8,b9,b1,b2,b3,b4,b5,b6) = crossover(b8,b9,b5,b2,b3,b4,b1,b6) &
crossover(b8,b9,b1,b2,b3,b4,b5,b6) = crossover(b8,b9,b6,b2,b3,b4,b5,b1);
:: GENEALG1:th 57
theorem
for b1, b2, b3, b4, b5, b6 being Element of NAT
for b7 being non empty Relation-like non-empty Function-like FinSequence-like set
for b8, b9 being Individual of b7 holds
crossover(b8,b9,b1,b1,b2,b3,b4,b5) = crossover(b8,b9,b2,b3,b4,b5) &
crossover(b8,b9,b1,b6,b1,b3,b4,b5) = crossover(b8,b9,b6,b3,b4,b5) &
crossover(b8,b9,b1,b6,b2,b1,b4,b5) = crossover(b8,b9,b6,b2,b4,b5) &
crossover(b8,b9,b1,b6,b2,b3,b1,b5) = crossover(b8,b9,b6,b2,b3,b5) &
crossover(b8,b9,b1,b6,b2,b3,b4,b1) = crossover(b8,b9,b6,b2,b3,b4);