proposition: Lemma not_square : forall (sqrt:positive) n, sqrt * sqrt < n < (sqrt+1)*(sqrt + 1) -> ~(isSquare n).
proof: Proof. intros sqrt n H (y,H0). destruct (Z_lt_ge_dec 0 y). apply (borned_square sqrt y);mauto. assert (y*y = (-y)*(-y)). ring. rewrite H1 in H0;clear H1. apply (borned_square sqrt (-y));mauto. Qed.
imports: List ZArith Zorder ZCAux LucasLehmer Pocklington ZCmisc Pmod