equal
deleted
inserted
replaced
33 "cring \<Z>" |
33 "cring \<Z>" |
34 apply (rule cringI) |
34 apply (rule cringI) |
35 apply (rule abelian_groupI, simp_all) |
35 apply (rule abelian_groupI, simp_all) |
36 defer 1 |
36 defer 1 |
37 apply (rule comm_monoidI, simp_all) |
37 apply (rule comm_monoidI, simp_all) |
38 apply (rule zadd_zmult_distrib) |
38 apply (rule left_distrib) |
39 apply (fast intro: zadd_zminus_inverse2) |
39 apply (fast intro: left_minus) |
40 done |
40 done |
41 |
41 |
42 (* |
42 (* |
43 lemma int_is_domain: |
43 lemma int_is_domain: |
44 "domain \<Z>" |
44 "domain \<Z>" |
296 next |
296 next |
297 assume "UNIV = {uu. EX x. uu = x * p}" |
297 assume "UNIV = {uu. EX x. uu = x * p}" |
298 from this obtain x |
298 from this obtain x |
299 where "1 = x * p" by best |
299 where "1 = x * p" by best |
300 from this [symmetric] |
300 from this [symmetric] |
301 have "p * x = 1" by (subst zmult_commute) |
301 have "p * x = 1" by (subst mult_commute) |
302 hence "\<bar>p * x\<bar> = 1" by simp |
302 hence "\<bar>p * x\<bar> = 1" by simp |
303 hence "\<bar>p\<bar> = 1" by (rule abs_zmult_eq_1) |
303 hence "\<bar>p\<bar> = 1" by (rule abs_zmult_eq_1) |
304 from this and prime |
304 from this and prime |
305 show "False" by (simp add: prime_def) |
305 show "False" by (simp add: prime_def) |
306 qed |
306 qed |