src/HOL/Complex/NSComplex.thy
changeset 14738 83f1a514dcb4
parent 14691 e1eedc8cad37
child 15003 6145dd7538d7
equal deleted inserted replaced
14737:77ea79aed99d 14738:83f1a514dcb4
   410 apply (simp add: hIm hcomplex_minus hypreal_minus complex_Im_minus)
   410 apply (simp add: hIm hcomplex_minus hypreal_minus complex_Im_minus)
   411 done
   411 done
   412 
   412 
   413 lemma hcomplex_add_minus_eq_minus:
   413 lemma hcomplex_add_minus_eq_minus:
   414       "x + y = (0::hcomplex) ==> x = -y"
   414       "x + y = (0::hcomplex) ==> x = -y"
   415 apply (drule Ring_and_Field.equals_zero_I)
   415 apply (drule OrderedGroup.equals_zero_I)
   416 apply (simp add: minus_equation_iff [of x y])
   416 apply (simp add: minus_equation_iff [of x y])
   417 done
   417 done
   418 
   418 
   419 lemma hcomplex_i_mult_eq [simp]: "iii * iii = - 1"
   419 lemma hcomplex_i_mult_eq [simp]: "iii * iii = - 1"
   420 by (simp add: iii_def hcomplex_mult hcomplex_one_def hcomplex_minus)
   420 by (simp add: iii_def hcomplex_mult hcomplex_one_def hcomplex_minus)
   427 
   427 
   428 
   428 
   429 subsection{*More Multiplication Laws*}
   429 subsection{*More Multiplication Laws*}
   430 
   430 
   431 lemma hcomplex_mult_one_right: "z * (1::hcomplex) = z"
   431 lemma hcomplex_mult_one_right: "z * (1::hcomplex) = z"
   432 by (rule Ring_and_Field.mult_1_right)
   432 by (rule OrderedGroup.mult_1_right)
   433 
   433 
   434 lemma hcomplex_mult_minus_one [simp]: "- 1 * (z::hcomplex) = -z"
   434 lemma hcomplex_mult_minus_one [simp]: "- 1 * (z::hcomplex) = -z"
   435 by simp
   435 by simp
   436 
   436 
   437 lemma hcomplex_mult_minus_one_right [simp]: "(z::hcomplex) * - 1 = -z"
   437 lemma hcomplex_mult_minus_one_right [simp]: "(z::hcomplex) * - 1 = -z"
   452  "Abs_hcomplex(hcomplexrel``{%n. X n}) - Abs_hcomplex(hcomplexrel``{%n. Y n}) =
   452  "Abs_hcomplex(hcomplexrel``{%n. X n}) - Abs_hcomplex(hcomplexrel``{%n. Y n}) =
   453   Abs_hcomplex(hcomplexrel``{%n. X n - Y n})"
   453   Abs_hcomplex(hcomplexrel``{%n. X n - Y n})"
   454 by (simp add: hcomplex_diff_def hcomplex_minus hcomplex_add complex_diff_def)
   454 by (simp add: hcomplex_diff_def hcomplex_minus hcomplex_add complex_diff_def)
   455 
   455 
   456 lemma hcomplex_diff_eq_eq [simp]: "((x::hcomplex) - y = z) = (x = z + y)"
   456 lemma hcomplex_diff_eq_eq [simp]: "((x::hcomplex) - y = z) = (x = z + y)"
   457 by (rule Ring_and_Field.diff_eq_eq)
   457 by (rule OrderedGroup.diff_eq_eq)
   458 
   458 
   459 lemma hcomplex_add_divide_distrib: "(x+y)/(z::hcomplex) = x/z + y/z"
   459 lemma hcomplex_add_divide_distrib: "(x+y)/(z::hcomplex) = x/z + y/z"
   460 by (rule Ring_and_Field.add_divide_distrib)
   460 by (rule Ring_and_Field.add_divide_distrib)
   461 
   461 
   462 
   462