equal
deleted
inserted
replaced
62 also have "\<dots> = p - 1" by simp |
62 also have "\<dots> = p - 1" by simp |
63 finally show ?thesis by simp |
63 finally show ?thesis by simp |
64 qed |
64 qed |
65 |
65 |
66 lemma p_eq: "p = (2 * (p - 1) div 2) + 1" |
66 lemma p_eq: "p = (2 * (p - 1) div 2) + 1" |
67 using zdiv_zmult_self2 [of 2 "p - 1"] by auto |
67 using div_mult_self1_is_id [of 2 "p - 1"] by auto |
68 |
68 |
69 |
69 |
70 lemma (in -) zodd_imp_zdiv_eq: "x \<in> zOdd ==> 2 * (x - 1) div 2 = 2 * ((x - 1) div 2)" |
70 lemma (in -) zodd_imp_zdiv_eq: "x \<in> zOdd ==> 2 * (x - 1) div 2 = 2 * ((x - 1) div 2)" |
71 apply (frule odd_minus_one_even) |
71 apply (frule odd_minus_one_even) |
72 apply (simp add: zEven_def) |
72 apply (simp add: zEven_def) |
73 apply (subgoal_tac "2 \<noteq> 0") |
73 apply (subgoal_tac "2 \<noteq> 0") |
74 apply (frule_tac b = "2 :: int" and a = "x - 1" in zdiv_zmult_self2) |
74 apply (frule_tac b = "2 :: int" and a = "x - 1" in div_mult_self1_is_id) |
75 apply (auto simp add: even_div_2_prop2) |
75 apply (auto simp add: even_div_2_prop2) |
76 done |
76 done |
77 |
77 |
78 |
78 |
79 lemma p_eq2: "p = (2 * ((p - 1) div 2)) + 1" |
79 lemma p_eq2: "p = (2 * ((p - 1) div 2)) + 1" |