equal
deleted
inserted
replaced
226 |
226 |
227 |
227 |
228 subsection{*Modulus (Absolute Value) of Nonstandard Complex Number*} |
228 subsection{*Modulus (Absolute Value) of Nonstandard Complex Number*} |
229 |
229 |
230 lemma hcomplex_of_hypreal_abs: |
230 lemma hcomplex_of_hypreal_abs: |
231 "hcomplex_of_hypreal (abs x) = |
231 "hcomplex_of_hypreal \<bar>x\<bar> = |
232 hcomplex_of_hypreal(hcmod(hcomplex_of_hypreal x))" |
232 hcomplex_of_hypreal (hcmod (hcomplex_of_hypreal x))" |
233 by simp |
233 by simp |
234 |
234 |
235 lemma HComplex_inject [simp]: |
235 lemma HComplex_inject [simp]: |
236 "!!x y x' y'. HComplex x y = HComplex x' y' = (x=x' & y=y')" |
236 "!!x y x' y'. HComplex x y = HComplex x' y' = (x=x' & y=y')" |
237 by transfer (rule complex.inject) |
237 by transfer (rule complex.inject) |
445 |
445 |
446 lemma hIm_mult_i_eq [simp]: |
446 lemma hIm_mult_i_eq [simp]: |
447 "!!y. hIm (iii * hcomplex_of_hypreal y) = y" |
447 "!!y. hIm (iii * hcomplex_of_hypreal y) = y" |
448 by transfer simp |
448 by transfer simp |
449 |
449 |
450 lemma hcmod_mult_i [simp]: "!!y. hcmod (iii * hcomplex_of_hypreal y) = abs y" |
450 lemma hcmod_mult_i [simp]: "!!y. hcmod (iii * hcomplex_of_hypreal y) = \<bar>y\<bar>" |
451 by transfer (simp add: norm_complex_def) |
451 by transfer (simp add: norm_complex_def) |
452 |
452 |
453 lemma hcmod_mult_i2 [simp]: "!!y. hcmod (hcomplex_of_hypreal y * iii) = abs y" |
453 lemma hcmod_mult_i2 [simp]: "!!y. hcmod (hcomplex_of_hypreal y * iii) = \<bar>y\<bar>" |
454 by transfer (simp add: norm_complex_def) |
454 by transfer (simp add: norm_complex_def) |
455 |
455 |
456 (*---------------------------------------------------------------------------*) |
456 (*---------------------------------------------------------------------------*) |
457 (* harg *) |
457 (* harg *) |
458 (*---------------------------------------------------------------------------*) |
458 (*---------------------------------------------------------------------------*) |
504 lemma hcmod_unit_one [simp]: |
504 lemma hcmod_unit_one [simp]: |
505 "!!a. hcmod (HComplex (( *f* cos) a) (( *f* sin) a)) = 1" |
505 "!!a. hcmod (HComplex (( *f* cos) a) (( *f* sin) a)) = 1" |
506 by transfer (simp add: cmod_unit_one) |
506 by transfer (simp add: cmod_unit_one) |
507 |
507 |
508 lemma hcmod_complex_polar [simp]: |
508 lemma hcmod_complex_polar [simp]: |
509 "!!r a. hcmod (hcomplex_of_hypreal r * HComplex (( *f* cos) a) (( *f* sin) a)) = |
509 "!!r a. hcmod (hcomplex_of_hypreal r * HComplex (( *f* cos) a) (( *f* sin) a)) = \<bar>r\<bar>" |
510 abs r" |
|
511 by transfer (simp add: cmod_complex_polar) |
510 by transfer (simp add: cmod_complex_polar) |
512 |
511 |
513 lemma hcmod_hrcis [simp]: "!!r a. hcmod(hrcis r a) = abs r" |
512 lemma hcmod_hrcis [simp]: "!!r a. hcmod(hrcis r a) = \<bar>r\<bar>" |
514 by transfer (rule complex_mod_rcis) |
513 by transfer (rule complex_mod_rcis) |
515 |
514 |
516 (*---------------------------------------------------------------------------*) |
515 (*---------------------------------------------------------------------------*) |
517 (* (r1 * hrcis a) * (r2 * hrcis b) = r1 * r2 * hrcis (a + b) *) |
516 (* (r1 * hrcis a) * (r2 * hrcis b) = r1 * r2 * hrcis (a + b) *) |
518 (*---------------------------------------------------------------------------*) |
517 (*---------------------------------------------------------------------------*) |