# HG changeset patch # User paulson # Date 966506207 -7200 # Node ID 61b57cc1cb5ad95405e676304c95b30ea0398b89 # Parent a71a83253997c09c02ca3f1c16adf465f480bfaa modified proofs: better rules for cancellation of common factors across comparisons diff -r a71a83253997 -r 61b57cc1cb5a src/HOL/NumberTheory/EulerFermat.ML --- a/src/HOL/NumberTheory/EulerFermat.ML Thu Aug 17 11:55:47 2000 +0200 +++ b/src/HOL/NumberTheory/EulerFermat.ML Thu Aug 17 11:56:47 2000 +0200 @@ -130,12 +130,8 @@ "[| #0 card (noXRRset m x) = card (norRRset m)"; by (rtac card_image 1); -by (rewtac inj_on_def); -by (auto_tac (claset(),simpset() addsimps [Bnor_fin])); -by (case_tac "x=#0" 1); +by (auto_tac (claset(),simpset() addsimps [inj_on_def, Bnor_fin])); by (asm_full_simp_tac (simpset() addsimps [BnorRset_eq]) 1); -by (stac (zmult_cancel2 RS sym) 1); -by (ALLGOALS Asm_simp_tac); qed "card_nor_eq_noX"; Goalw [is_RRset_def,phi_def] diff -r a71a83253997 -r 61b57cc1cb5a src/HOL/NumberTheory/IntPrimes.ML --- a/src/HOL/NumberTheory/IntPrimes.ML Thu Aug 17 11:55:47 2000 +0200 +++ b/src/HOL/NumberTheory/IntPrimes.ML Thu Aug 17 11:56:47 2000 +0200 @@ -140,15 +140,10 @@ by Auto_tac; by (subgoal_tac "#0 a = b"; -by (rtac (eq_iff_zdiff_eq_0 RS iffD2) 1); -by Auto_tac; -by (subgoal_tac "k=#0" 1); -by (subgoal_tac "#-1 a = #1 | a = p-#1"; @@ -544,8 +540,8 @@ by (rotate_tac ~1 1); by (asm_full_simp_tac (simpset() addsimps [int_0_le_mult_iff]) 1); by (subgoal_tac "m*k (EX! b. #0<=b & b