equal
deleted
inserted
replaced
16 \ (ALL b : set factors. irred b) & c dvd foldr op* factors a --> \ |
16 \ (ALL b : set factors. irred b) & c dvd foldr op* factors a --> \ |
17 \ (EX d. c assoc d & d : set factors)"; |
17 \ (EX d. c assoc d & d : set factors)"; |
18 by (induct_tac "factors" 1); |
18 by (induct_tac "factors" 1); |
19 (* Base case: c dvd a contradicts irred c *) |
19 (* Base case: c dvd a contradicts irred c *) |
20 by (full_simp_tac (simpset() addsimps [thm "irred_def"]) 1); |
20 by (full_simp_tac (simpset() addsimps [thm "irred_def"]) 1); |
21 by (blast_tac (claset() addIs [dvd_trans_ring]) 1); |
21 by (blast_tac (claset() addIs [thm "dvd_trans_ring"]) 1); |
22 (* Induction step *) |
22 (* Induction step *) |
23 by (ftac (thm "factorial_prime") 1); |
23 by (ftac (thm "factorial_prime") 1); |
24 by (full_simp_tac (simpset() addsimps [thm "irred_def", thm "prime_def"]) 1); |
24 by (full_simp_tac (simpset() addsimps [thm "irred_def", thm "prime_def"]) 1); |
25 by (Blast_tac 1); |
25 by (Blast_tac 1); |
26 qed "irred_dvd_list_lemma"; |
26 qed "irred_dvd_list_lemma"; |