src/HOL/Hyperreal/HRealAbs.ML
changeset 14331 8dbbb7cf3637
parent 14299 0b5c0b0a3eba
child 14336 8f731d3cd65b
equal deleted inserted replaced
14330:eb8b8241ef5b 14331:8dbbb7cf3637
   103 Goal "[| abs x<r;  abs y<s |] ==> abs x * abs y < r * (s::hypreal)";
   103 Goal "[| abs x<r;  abs y<s |] ==> abs x * abs y < r * (s::hypreal)";
   104 by (subgoal_tac "0 < r" 1);
   104 by (subgoal_tac "0 < r" 1);
   105 by (asm_full_simp_tac (simpset() addsimps [hrabs_def] 
   105 by (asm_full_simp_tac (simpset() addsimps [hrabs_def] 
   106                                  addsplits [split_if_asm]) 2); 
   106                                  addsplits [split_if_asm]) 2); 
   107 by (case_tac "y = 0" 1);
   107 by (case_tac "y = 0" 1);
   108 by (asm_full_simp_tac (simpset() addsimps [hypreal_0_less_mult_iff]) 1); 
   108 by (asm_full_simp_tac (simpset() addsimps [zero_less_mult_iff]) 1); 
   109 by (rtac hypreal_mult_less_mono 1); 
   109 by (rtac hypreal_mult_less_mono 1); 
   110 by (auto_tac (claset(), 
   110 by (auto_tac (claset(), 
   111               simpset() addsimps [hrabs_def, linorder_neq_iff] 
   111               simpset() addsimps [hrabs_def, linorder_neq_iff] 
   112                         addsplits [split_if_asm])); 
   112                         addsplits [split_if_asm])); 
   113 qed "hrabs_mult_less";
   113 qed "hrabs_mult_less";