diff -r d2848ccc9757 -r 0a01efff43e9 src/HOL/Real/RealDef.ML --- a/src/HOL/Real/RealDef.ML Wed Dec 12 19:21:54 2001 +0100 +++ b/src/HOL/Real/RealDef.ML Wed Dec 12 19:22:21 2001 +0100 @@ -367,21 +367,23 @@ Addsimps [real_mult_0_right, real_mult_0]; -Goal "-(x * y) = (-x) * (y::real)"; +Goal "(-x) * (y::real) = -(x * y)"; by (res_inst_tac [("z","x")] eq_Abs_REAL 1); by (res_inst_tac [("z","y")] eq_Abs_REAL 1); by (auto_tac (claset(), simpset() addsimps [real_minus,real_mult] @ preal_mult_ac @ preal_add_ac)); -qed "real_minus_mult_eq1"; +qed "real_mult_minus_eq1"; +Addsimps [real_mult_minus_eq1]; + +bind_thm("real_minus_mult_eq1", real_mult_minus_eq1 RS sym); -Goal "-(x * y) = x * (- y :: real)"; -by (simp_tac (simpset() addsimps [inst "z" "x" real_mult_commute, - real_minus_mult_eq1]) 1); -qed "real_minus_mult_eq2"; +Goal "x * (- y :: real) = -(x * y)"; +by (simp_tac (simpset() addsimps [inst "z" "x" real_mult_commute]) 1); +qed "real_mult_minus_eq2"; +Addsimps [real_mult_minus_eq2]; -(*Pull negations out*) -Addsimps [real_minus_mult_eq1 RS sym, real_minus_mult_eq2 RS sym]; +bind_thm("real_minus_mult_eq2", real_mult_minus_eq2 RS sym); Goal "(- (1::real)) * z = -z"; by (Simp_tac 1); @@ -395,15 +397,13 @@ Addsimps [real_mult_minus_1_right]; Goal "(-x) * (-y) = x * (y::real)"; -by (full_simp_tac (simpset() addsimps [real_minus_mult_eq2 RS sym, - real_minus_mult_eq1 RS sym]) 1); +by (Simp_tac 1); qed "real_minus_mult_cancel"; Addsimps [real_minus_mult_cancel]; Goal "(-x) * y = x * (- y :: real)"; -by (full_simp_tac (simpset() addsimps [real_minus_mult_eq2 RS sym, - real_minus_mult_eq1 RS sym]) 1); +by (Simp_tac 1); qed "real_minus_mult_commute"; (** Lemmas **)