reserve D for non empty set;
reserve f1,f2 for FinSequence of D;
reserve i,n,n1,n2,n3,n4,n5,n6 for Element of NAT;
reserve S for Gene-Set;
reserve p1,p2 for Individual of S;

theorem Th30:
  crossover(p1,p2,0,0,n3,n4) = crossover(p1,p2,n3,n4) & crossover(
  p1,p2,0,n2,0,n4) = crossover(p1,p2,n2,n4) & crossover(p1,p2,0,n2,n3,0) =
crossover(p1,p2,n2,n3) & crossover(p1,p2,n1,0,n3,0) = crossover(p1,p2,n1,n3) &
crossover(p1,p2,n1,0,0,n4) = crossover(p1,p2,n1,n4) & crossover(p1,p2,n1,n2,0,0
  ) = crossover(p1,p2,n1,n2)
proof
  crossover(p1,p2,0,0,n3,n4) = crossover(p2,p1,0,n3,n4) by Th29;
  hence crossover(p1,p2,0,0,n3,n4) = crossover(p1,p2,n3,n4) by Th15;
  crossover(p1,p2,0,n2,0,n4) = crossover(p2,p1,n2,0,n4) by Th29;
  hence crossover(p1,p2,0,n2,0,n4) = crossover(p1,p2,n2,n4) by Th15;
  crossover(p1,p2,0,n2,n3,0) = crossover(p2,p1,n2,n3,0) by Th29;
  hence crossover(p1,p2,0,n2,n3,0) = crossover(p1,p2,n2,n3) by Th15;
  crossover(p1,p2,n1,0,n3,0) = crossover(p2,p1,n1,n3,0) by Th29;
  hence crossover(p1,p2,n1,0,n3,0) = crossover(p1,p2,n1,n3) by Th15;
  crossover(p1,p2,n1,0,0,n4) = crossover(p2,p1,n1,0,n4) by Th29;
  hence crossover(p1,p2,n1,0,0,n4) = crossover(p1,p2,n1,n4) by Th15;
  crossover(p1,p2,n1,n2,0,0) = crossover(p2,p1,n1,n2,0) by Th29;
  hence thesis by Th15;
end;
