equal
deleted
inserted
replaced
844 from H[unfolded coprime] |
844 from H[unfolded coprime] |
845 obtain p where p: "p dvd n" "p dvd a" "p \<noteq> 1" by auto |
845 obtain p where p: "p dvd n" "p dvd a" "p \<noteq> 1" by auto |
846 from lh[unfolded nat_mod] |
846 from lh[unfolded nat_mod] |
847 obtain q1 q2 where q12:"a ^ d + n * q1 = 1 + n * q2" by blast |
847 obtain q1 q2 where q12:"a ^ d + n * q1 = 1 + n * q2" by blast |
848 hence "a ^ d + n * q1 - n * q2 = 1" by simp |
848 hence "a ^ d + n * q1 - n * q2 = 1" by simp |
849 with nat_dvd_diff [OF dvd_add [OF divides_rexp[OF p(2), of d'] dvd_mult2[OF p(1), of q1]] dvd_mult2[OF p(1), of q2]] d' have "p dvd 1" by simp |
849 with dvd_diff_nat [OF dvd_add [OF divides_rexp[OF p(2), of d'] dvd_mult2[OF p(1), of q1]] dvd_mult2[OF p(1), of q2]] d' have "p dvd 1" by simp |
850 with p(3) have False by simp |
850 with p(3) have False by simp |
851 hence ?rhs ..} |
851 hence ?rhs ..} |
852 ultimately have ?rhs by blast} |
852 ultimately have ?rhs by blast} |
853 moreover |
853 moreover |
854 {assume H: "coprime n a" |
854 {assume H: "coprime n a" |